Method and system for dynamic channel allocation in long-range land-to-sea (LRLS) wireless communication

Disclosed herein is a method and system for dynamic channel allocation among plurality of Base Transceiver Stations (BTSs) in Long-Range Land-to-Sea (LRLS) wireless network. The method comprises configuring plurality of channels, having non-overlapping frequencies, to plurality of BTSs, and obtaining channel quality parameters related to each channel. Subsequently, an Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) metrics and a throughput value for each of plurality of BTSs is determined based on the channel quality parameters. Finally, an optimal channel is identified among plurality of channels for allocating to each of plurality of BTSs based on the AWSINR metrics or the throughput value. In an embodiment, the present disclosure helps in eliminating interference in the LRLS wireless network, thereby optimizing network throughput and enhancing Quality of Experience to end users.

FIELD OF THE INVENTION

The present subject matter is, in general, related to Long-Range Land-to-Sea (LRLS) communication, but not exclusively, to a method and system for performing dynamic channel allocation among a plurality of Base Transceiver Stations (BTSs) in the LRLS wireless network.

BACKGROUND

Generally, Long-Range Land-to-Sea (LRLS) communication in 5 GHz unlicensed shared spectrum uses a Variable-Time-Slot Time Division Multiple Access (VTS-TDMA) method and an Automatic Repeat Request/Query (ARQ) error-control mechanism to set-up communication channels between a Base Transceiver Station (BTS) on land and Customer Premises Equipments (CPEs) in the sea or on ships. However, since the LRLS operates in the shared spectrum, quality of the channels connecting the BTS and the CPEs becomes dependent on usage of the shared spectrum by other entities such as end user devices. Also, due to increased usage of the shared spectrum in the 5 GHz hand and coexistence of other wireless entities/devices in the same frequency hand, the BTS and the CPEs are subjected to greater frequency interference. As a result, throughput and network utilization of the shared spectrum network is significantly reduced.

Further, Service Level Agreement (SLA) and quality maintenance issues may arise when the throughput of the channels drops below a threshold value, for example, 3 Mbps. The throughput may drop at smaller distances (i.e. at reduced cell edge) due to interference at the BTS and the CPEs. In such a scenario, it would be necessary to switch the channels and/or data-paths between the BTS and CPEs to an available Very Small Aperture Terminal (VSAT) network to maintain the desired SLA. However, certain network entry/re-entry events may trigger the data-paths to switch back to the LRLS network from the VSAT network. This back-and-forth switching of the data-paths is most likely to result in “flapping” (ping-pong) effect and affects overall Quality of Experience (QoE) at the CPEs. Further, any interference at the BTS and CPEs may aggravate the flapping issue post switching of channels from the VSAT to the LRLS.

SUMMARY

One or more shortcomings of the prior art may be overcome, and additional advantages may be provided through the present disclosure. Additional features and advantages may be realized through the techniques of the present disclosure. Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.

Disclosed herein is a method of dynamic channel allocation among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-To-Sea (LRLS) wireless network. The method comprises configuring, by a channel allocation unit, a plurality of channels, having non-overlapping frequencies, to the plurality of BTSs for communicating with one or more Customer Premises Equipments (CPEs). Further, the method comprises scanning each of the plurality of channels corresponding to each pair of the BTS and the CPEs for obtaining one or more channel quality parameters related to each of the plurality of channels. Upon obtaining the one or more channel quality parameters, the method comprises computing at least one of an Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) metrics or channel capacity metrics for each pair of the BTS and the CPEs, across each of the plurality of channels, based on the one or more channel quality parameters. Thereafter, the method comprises determining a throughput value for the plurality of BTSs across each of the plurality of channels based on the channel capacity metrics of the corresponding channel. Finally, the method comprises identifying an optimal channel from the plurality of channels, for each of the plurality of BTSs based on at least one of the AWSINR metrics or the throughput value. The identified optimal channel is allocated to respective each of the plurality of BTSs.

Further, the present disclosure relates to a channel allocation unit for performing dynamic channel allocation among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-To-Sea (LRLS) wireless network. The channel allocation unit comprises a processor and a memory, communicatively coupled to the processor and stores processor-executable instructions, which on execution, cause the processor to configure a plurality of channels, having non-overlapping frequencies, to the plurality of BTSs to communicate with one or more Customer Premises Equipments (CPEs). Further, the instructions cause the processor to scan each of the plurality of channels corresponding to each pair of the BTS and the CPEs to obtain one or more channel quality parameters related to each of the plurality of channels. Furthermore, the instructions cause the processor to compute at least one of an Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) metrics or the channel capacity metrics for each pair of the BTS and the CPEs, across each of the plurality of channels, based on the one or more channel quality parameters. Thereafter, the instructions cause the processor to determine a throughput value for the plurality of BTSs across each of the plurality of channels based on the channel capacity metrics of the corresponding channel. Finally, the instructions cause the processor to identity an optimal channel from the plurality of channels, for each of the plurality of BTSs based on at least one of the AWSINR metrics or the throughput value. The identified optimal channel is allocated to respective each of the plurality of BTSs.

Furthermore, the present disclosure is related to a non-transitory computer readable medium including instructions stored thereon that when processed by at least one processor cause a channel allocation unit to perform operations comprising configuring a plurality of channels having non-overlapping frequencies to the plurality of BTSs for communicating with one or more Customer Premises Equipments (CPEs). Further, the instructions cause the channel allocation unit to scan each of the plurality of channels corresponding to each pair of the BTS and the CPEs for obtaining one or more channel quality parameters related to each of the plurality of channels. Thereafter, the instructions cause the channel allocation unit to compute at least one of an Aggregate Weighted Signal-to-interference Noise Ratio (AWSINR) metrics or channel capacity metrics for each pair of the BTS and the CPEs, across each of the plurality of channels, based on the one or more channel quality parameters. Further, the instructions cause the channel allocation unit to determine a throughput value for the plurality of BTSs across each of the plurality of channels based on the channel capacity metrics of the corresponding channel. Finally, the instructions cause the channel allocation unit to identify an optimal channel, from the plurality of channels, for each of the plurality of BTSs based on at least one of the AWSINR metrics or the throughput value, wherein the identified optimal channel is allocated to respective each of the plurality of BTSs.

DETAILED DESCRIPTION

The present disclosure relates to a method and a channel allocation unit for dynamically allocating channels among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-To-Sea (LRLS) wireless network. In an embodiment, the present disclosure discloses a robust interference avoidance mechanism in the LRLS communication in a shared spectrum network. The proposed mechanism helps in maximizing throughput or QoS (Quality of Service) and maintaining Service Level Agreement (SLA) requirements of the LRLS communication. Further, the instant disclosure also discloses a mechanism for mitigating “flapping” or “ping-pang” effect in the LRLS network, thereby maintaining Quality of Experience (QoE) for end users.

FIG. 1illustrates an exemplary environment100for dynamically allocating plurality of channels105among a plurality of Base Transceiver Stations (BTSs)107in a Long-Range Land-to-Sea (LRLS) wireless network109in accordance with some embodiments of the present disclosure.

The environment100includes a channel allocation unit101, a gateway103, a plurality of Base Transceiver Stations namely, Base Transceiver Station11071to Base Transceiver Station N107N(collectively referred as Base Transceiver Stations107) and one or more Customer Premises Equipments (CPEs) namely, Customer Premises Equipment11111to Customer Premises Equipment N111N(collectively referred as Customer Premises Equipments111) connected to the plurality of BTSs107. In an implementation, the CPEs111may be connected to the plurality of BTSs107using a plurality of channels namely, channel11051to channel N105N(collectively referred as plurality of channels105), in the LRLS wireless network109. The LRLS wireless network109may be established between the plurality of BTSs107and the CPEs111. In an implementation, the gateway103may be a network gateway or a router, which facilitates connection between the channel allocation unit101and the plurality of BTSs107.

In an embodiment, the channel allocation unit101may be configured for dynamically allocating the plurality of channels105among the plurality of BTSs107, such that each of the plurality of BTSs107are configured with a non-overlapping frequency at any point of time. In some implementations, the channel allocation unit101may be configured as a plugin to a network management system (not shown in figures) associated with an external wired network.

The one or more CPEs111may include, without limiting to, mobile phones, computers/laptops, Personal Digital Assistants (PDAs), and other electronic devices, which are capable of connecting to the LRLS wireless network109using the plurality of channels105. In the LRLS communication scenario, the plurality of BTSs107may be deployed on the land and/or shores of the sea and may extend wireless network connectivity to the one or more CPEs111through the LRLS wireless network109. The one or more CPEs111may be present in the sea, i.e. on ships, boats or other water-borne vehicles.

In an embodiment, the channel allocation unit101may configure the plurality of channels105, having non-overlapping frequencies, to the plurality of BTSs107for communicating with the one or more CPEs111. Thereafter, the channel allocation unit101may send commands to the BTSs107to scan each of the plurality of channels105corresponding to each pair of the BTS107and the CPEs111to obtain one or more channel quality parameters related to each of the plurality of channels105. As an example, the one or more channel quality parameters may include, without limiting to, at least one of a downlink Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) of each of the plurality of channels105, an uplink AWSINR of each of the plurality of channels105, buffer size of each of the plurality of channels105, downlink channel capacity of each of the plurality of channels105, and uplink channel capacity of each of the plurality of channels105.

In an embodiment, upon receiving the one or more channel quality parameters, the channel allocation unit101may compute at least one of AWSINR metrics or channel capacity metrics for each pair of the BTS107and the CPEs111, across each of the plurality of channels105. Subsequently, the channel allocation unit101may determine a throughput value for the plurality of BTSs107across each of the plurality of channels105based on the channel capacity metrics of the corresponding channel. Finally, the channel allocation unit101may identify an optimal channel, among the plurality of channels105, for each of the plurality of BTSs107based on at least one of the AWSINR metrics or the throughput value. In an embodiment, the channel allocation unit101may allocate each of the identified optimal channel to the respective plurality of BTSs107, thereby ensuring that each of the plurality of BTSs107are configured with optimal channels having non-overlapping frequencies.

FIG. 2shows a detailed block diagram illustrating a channel allocation unit101in accordance with some embodiments of the present disclosure.

In some implementations, the channel allocation unit101may include an I/O interface201, a processor203, and a memory205. The I/O interface201may be configured to obtain one or more channel quality parameters211related to each of plurality of channels105configured to the plurality of BTSs107. The processor203may be configured to perform one or more functions of the channel allocation unit101while performing dynamic channel allocation among the plurality of BTSs107.

In some implementations, the memory205may be communicatively coupled to the processor203and may store data207and one or more modules209. In an embodiment, the data207may include, without limiting to, channel quality parameters211, Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) metrics213, channel capacity metrics215, throughput value217and other data219.

In some embodiments, the data207may be stored within the memory205in the form of various data structures. Additionally, the data207may be organized using data models, such as relational or hierarchical data models. The other data219may store all temporary data and files generated by the one or more modules209while performing various functions of the channel allocation unit101.

In an embodiment, the channel quality parameters211may be obtained by scanning each of the plurality of channels105corresponding to each pair of the BTS107and the CPEs111. As an example, the one or more channel quality parameters211comprise at least one of a downlink AWSINR of each of the plurality of channels105, an uplink AWSINR of each of the plurality of channels105, buffer size of each of the plurality of channels105, downlink channel capacity of each of the plurality of channels105, and uplink channel capacity of each of the plurality of channels105. In some implementations, the channel quality parameters211may be obtained at predetermined regular intervals, for example at every 10 seconds, in order to constantly monitor and record variations in each of the plurality of channels105.

In an embodiment, the AWSINR metrics213may be computed for each pair of the BTS107and the CPEs111across each of the plurality of channels105based on the one or more channel quality parameters211. As an example, the AWSINR of a channel may be computed as a sum of downlink AWSINR and uplink AWSINR of the channel, normalized to buffer size of the channel as shown in equation (1) below:
AWSINRchannel=(ΣAWSINRul-channel+AWSINRdl-channel)/2*L(1)
Wherein,

AWSINRchannelis combined AWSINR of the channel

AWSINRul-channelis Uplink AWSINR of the channel

AWSINRdl-channelis Downlink AWSINR of the channel

‘L’ is the length of the cyclic buffer used to store the AWSINR samples.

As an example, the AWSINR metrics213for BTS ‘A’ across a channel ‘j’ may be determined using equation (2) below:
TAj=ΣSij  (2)

‘ΣSij’ is the combined normalized AWSINR metrics213for the channel ‘j’ across all the CPEs denoted by ‘i’.

In an embodiment, the channel capacity metrics215may be computed for each pair of the BTS107and the CPEs111across each of the plurality of channels105based on the one or more channel quality parameters211. As an example, the channel capacity metrics215of a channel may be computed as a sum of downlink channel capacity metrics215and uplink channel capacity metrics215of the channel as indicated in equation (3) below:
Cchannel=Cul+Cdl(3)

Cchannelis combined channel capacity of the channel

Cul—uplink channel capacity of the channel

Cdl—downlink channel capacity of the channel

Further, values of ‘Cul’ and the ‘Cdl’ may be computed using the equations (4) and (5) below:
Cul=1/N(ΣTul[mcs]*rStatsul[mcs])  (4)
Cdl=1/N(ΣTdl[mcs]*rStatsdl[mcs])  (5)

‘N’ is number of link adaptation probes/messages sent through the channel

‘Tul[mcs]’ is the optimal throughput value217that can be achieved on the uplink channel for a given Modulation and Coding Scheme (MCS)

‘Tdl[mcs]’ is the optimal throughput value217that can be achieved on the downlink channel for the given MCS.

‘rStatsul[mcs]’ and ‘rStatsdl[mcs]’ are the probe statistics received over the uplink channel and the downlink channel, respectively for the given MCS.

In an embodiment, the throughput value217for the plurality of BTSs107across each of the plurality of channels105may be determined based on the channel capacity metrics215of the corresponding channel. As an example, the throughput value217for BTS ‘A’ across a channel ‘j’ may be determined using equation (6) below:
TAj=ΣCij(6)

‘ΣCij’ is the combined channel capacity metrics215for the channel ‘j’ across all the CPEs denoted by ‘i’.

In an embodiment, each of the data207may be processed by the one or more modules209of the channel allocation unit101. In one implementation, the one or more modules209may be stored in the memory205and communicatively coupled to the processor203. In another implementation, the one or more modules209may be configured as a part of the processor203. In an implementation, the one or more modules209may include, without limiting to, a configuration module221, a channel scanning module223, a metrics computation module225, an optimal channel identification module227, and other modules229.

As used herein, the term module refers to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality. In an embodiment, the other modules229may be used to perform various miscellaneous functionalities of the channel allocation unit101. It will be appreciated that the one or more modules209may be represented as a single module or a combination of different modules.

In an embodiment, the configuration module221may be used for configuring a plurality of channels105, having non-overlapping frequencies, to the plurality of BTSs107for communicating with the one or more CPEs111. Initially, the configuration module221may analyze various information obtained by performing a frequency scan of the LRLS wireless network109on 5 GHz shared spectrum network. Further, based on the analysis, the configuration module221may derive insights into the plurality of BTSs107and the plurality of channels105associated with them, by collecting information related to each of the plurality of BTSs107. As an example, the information collected by the configuration module221may include signal strength and Radio Frequency (RF) activity around the plurality of BTSs107, and information required to minimize possibility of co-channel, overlapping channel and non-Wi-Fi interference at the plurality of BTSs107. Thereafter, the configuration module221may identify maximum number of channels having minimal interference in the LRLS wireless network109. Finally, the configuration module221may configure each of the plurality of BTSs107with the identified channels, such that every adjacent BTS107among the plurality of BTSs107are on the non-overlapping frequencies.

In an embodiment, the channel scanning module223may be used for scanning each of the plurality of channels105corresponding to each pair of the BTS107and the CPEs111for obtaining one or more channel quality parameters211related to each of the plurality of channels105. Initially, the channel scanning module223may fetch from each of the plurality of BTSs107initial operating frequencies of each of the plurality of BTSs107. Thereafter, the channel scanning module223may iteratively fetch from each of the plurality of BTSs107on each of the available non-overlapping frequencies to obtain the channel quality parameters211related to each of the plurality of channels105.

For example, suppose there are ‘M’ channels, having non-overlapping frequencies {f1, f2, . . . fM}, available for allocating to a plurality of BTSs107. Further, suppose every BTSi among the plurality of BTSs107has ‘N’ other neighboring BTSs, such that (1≤N≤M−1) and each of the plurality of BTSs107are on non-overlapping frequencies. With the above consideration, for M=9 and N=4, initial operating frequencies for the plurality of BTSs107may be as indicated by highlighted boxes in Table 1 below:

TABLE 1Initial operating frequencies for the BTSsBTS|Ff1f2f3f4f5f6f7f8f9BTS1f1BTS2f3BTS3f6BTS4f7BTS5f9

In an embodiment, upon collecting the initial operating frequencies of each of the plurality of BTSs107, the channel scanning module223may scan each of the plurality of channels105using the scanning mechanism illustrated below:

Initialize A[k−1]=index of operating frequency for BTSk;for all j in 1 to M,for all k in 0 to N,
performA[k]=(A[k])mod(M)+1  (5)
Wherein,

‘A[k]’ is a frequency array storing frequencies for BTS ‘k’, 1≤k≤(N+1)

‘M’ is the number of frequencies

‘N’ is number of neighboring BTSs of the BTS ‘k’

For example, for M=9, N=4 and k=1, an operating frequency for the BTS1 at first level scan (denoted by Scan 1) may be determined using the equation (5) as illustrated below:

Similarly, an operating frequency for the BTS2 at second level scan (denoted by Scan 2) may be determined using the equation (5) as illustrated below:

Likewise, the channel scanning module223may scan each of the plurality of BTSs107and their corresponding plurality of channels105to determine the operating frequencies of each of the plurality of BTSs107as shown in Table 2 below:

TABLE 2Frequency scan of each of the plurality ofBTSs over each of the plurality of channelsScan iterationBTS5BTS4BTS3BTS2BTS1Initial operating frequencies97631Scan 118742Scan 229853Scan 331964Scan 442175Scan 553286Scan 664397Scan 775418Scan 886529Final97631

In an embodiment, the channel scanning module223may scan the plurality of channels105at predetermined intervals. Suppose, the operating frequency for a given BTS107is f0. Here, the BTS107may periodically signal its corresponding CPE for a frequency scan procedure by setting a flag in a Time-Division Duplex (TDD) message being exchanged between the BTS107and the CPE. Additionally, the BTS107may also communicate the frequency to be scanned ‘fj’ (such that fj≠fo) to the CPE. This would ensure that any new CPE, wanting to join the BTS107network, is refrained from establishing a connection with the BTS107, since the TDD flag is already set. For example, if the number of CPEs111connected to the BTS107is ‘K’, then, when the BTS107changes its frequency to ‘fj’, all “K” CPEs may change their operating frequencies to ‘fj’ in a TDMA round-robin fashion. This may ensure that there are no overlapping frequencies among any pair of BTS107and the CPEs111.

In an embodiment, metrics computation module225may be used for computing at least one of the AWSINR metrics213or the channel capacity metrics215for each pair of the BTS107and the CPEs111, across each of the plurality of channels105(identified in Table 2), based on the one or more channel quality parameters211.

Computation of AWSINR:

In an embodiment, the SINR of a channel may be directly correlated to the throughput of the channel. Therefore, maximizing the SINR may maximize the throughput of the channel. Hence, determining the AWSINR of the plurality of channels105for each pair of the BTS107and the CPEs111may be crucial for determining the throughput of each of the plurality of channels105.

In an embodiment, for a given CPEi, the uplink and downlink SINR metrics may be aggregated at the BTS107for a frequency ‘fj’. For example, once the BTS107and the CPEi exchange a pre-determined number of statistics packets, the CPEi may compute the downlink SINR from the packets. As an example, the statistics packets may be Medium Access Control Protocol Data Units (MAC PDUs) with dummy payloads. Subsequently, upon computing the downlink SINR, the CPEi may transmit the downlink SINR to the BTS107in the uplink TDD (or at the end of downlink transmission). Thereafter, the BTS107may extract the downlink SINR metrics and buffer them. Similarly, the BTS107may compute the uplink SINR from the uplink packets received from the CPEi and buffer them. Subsequently, the AWSINR metrics213may be computed for both the buffers and subjected to a cell edge detection logic. If a cell edge is detected in the uplink or in the downlink, then the combined AWSINR for CPEi may be set to 0. On the other hand, if the cell edge is not detected, then the combined AWSINR may be set as a sum of uplink AWSINR and downlink AWSINR, normalized by the buffer size ‘L’ of the channel, as indicated in equation (1).
i.e. AWSINRchannel(S)=(ΣAWSINRul-channel+AWSINRdl-channel)/2*L

In an embodiment, each of the plurality of BTSs107may store the AWSINR metrics213for each of the one or more CPEs111connected to them, as shown in the Table 3 below. Subsequently, the plurality of BTSs107may refer to the computed AWSINR metrics at every ‘Td’ seconds to monitor channel distribution to the one or more CPEs111.

TABLE 3AWSINR metrics for BTS1 over frequencies f1-f9BTS1f1f2f3f4f5f6f7f8f9CPE1S11S12S13S14S15S16S17S18S19CPE20S22S23S24S250S27S28S29CPE3S31S32S330S35S36S37S38S39ΣT11T12T13T14T15T16T17T18T19

Here, ‘Sij’ denotes the combined AWSINR for BTS1 connected to the CPEi over the frequency ‘fj’. ‘T1j’ denotes the combined normalized AWSINR for BTS1 over the frequency ‘fj’ across each of the ‘K’ CPEs.
i.e.T1j=ΣSij, for all 1≤i≤K

For example, combined AWSINR for BTS1 on frequency 1 may be computed as T11=S11+S21+S31, when the BTS1 is connected to CPE1, CPE2 and CPE3.

Computation of Channel Capacity:

In an embodiment, for a given CPEi, i.e., a pair of (BTS, CPEi), the channel capacity on a frequency ‘fj’ may be computed as the sum of uplink channel capacity for CPEi over ‘fj’ and downlink channel capacity for CPEi over ‘fj’, as illustrated in equations (3), (4) and (5). In an embodiment, the metrics computation module225may validate both the uplink channel capacity and the downlink channel capacity against a required Service Level Agreement (SLA) to determine if both the uplink channel and the downlink channel satisfy the required SLA. For example, the SLA requirement may be that, both the uplink channel and the downlink channel must have a channel capacity of more than 3 Mbps.

In such a scenario, if the SLA is not satisfied by either the uplink channel or the downlink channel, then the frequency ‘fj’ may be considered as not qualified for allocation and the combined channel capacity for ‘fj’ may be set to 0. However, if the SLA requirement is satisfied by both the uplink channel and the downlink channel, then the metrics computation module225may compute the combined channel capacity (C) for ‘fj’ using the equation (3). Further, the channel capacity metrics215for each of the plurality of BTSs107, corresponding to each of the one or more CPEs111, may be computed and stored at each of the plurality of BTSs107as shown in Table 4.

Here, ‘Cij’ denotes the combined channel capacity for BTS1 connected to the CPEi over the frequency ‘fj’. ‘T1j’ denotes the throughput for BTS1 over the frequency ‘fj’ across each of the ‘K’ CPEs.
i.e.T1j=ΣCij, for all 1≤i≤K

For example, the throughput value217for BTS1 on frequency 4 may be computed as: T14=C14+C24+C34, when the BTS1 is connected to CPE1, CPE2 and CPE3.

In an embodiment, the optimal channel identification module227may be used for identifying an optimal channel for each of the plurality of BTSs107based on at least one of the AWSINR metrics213or the throughput value217. Initially, the optimal channel identification module227may extract values of Tkj, i.e., the combined AWSINR metrics213or the throughput values217, corresponding to each BTSk on a frequency ‘fj’, from the respective BTSs. Subsequently, the optimal channel identification module227may sort each of the plurality of BTSs107based on extracted values of Tkj, such that each pair (i, j) of the BTS107and the corresponding channel are unique and the ΣTij for the pair (i, j) is maximized.

As an example, sorting of each pair of the BTS107and the corresponding channels105may be performed using merge sort technique as illustrated in the below steps:1. Perform a merge sort of each element in the array: {T(1,), T(2,), T(3,), . . . , T(B,)} in a predetermined sorting order and obtain a sorted array ‘SA’.
Wherein, ‘T(i,)’ denotes at least one of the AWSINR metrics213or the throughput value217corresponding to each pair of the BTS107and the corresponding channel. ‘B’ denotes the number of BTSs107available.2. Maintain distinct arrays, BA of size B (representing the plurality of BTSs107) and FA, of size M (representing the plurality of channels105), initialized to 0.3. In the sorted array SA, let (bts_id, freq_id)=(xi, yi) for index=i.Initialize index=0 and rank=1 for a loop over the length of SA:

if BA[xi] or FA[yi] is ≠ 0,increment indexfetch (xi, yi) at the new indexelseBA[xi]=FA[yi]=rankincrement rankif a rank has been assigned to all the BTSs ‘B’, then exit the loop.4. Assign frequency FA[i] to BTS BA[i] for all the BTS ‘B’ in SA, and5. Transmit frequency switch-over commands to each of the ‘B’ BTSs with an updated frequency list for each pair of the BTS and the corresponding channel.

For example, suppose the Tij metrics (i.e. either the AWSINR metrics213or the throughput value217) for BTS1-BTS5 over frequencies f1-f5 may be as indicated in Table 5 below:

TABLE 5Tij metrics for the BTSsBTSf1f2f3f4f5T(1,)151722129T(2,)1612112413T(3,)1212131319T(4,)1716111228T(5,)1111101022

Further, upon sorting each of the plurality arrays in the metrics using the merge sort technique illustrated above, the sorted array SA may be as shown in Table 6 below:

Here, since the pair (4, 5) representing BTS4 and its corresponding channel, channel 5 has the maximum value of Tij, i.e. 28, the pair (4, 5) may be arranged as the first element in the sorted array. In an embodiment, upon sorting each pair of the BTS107and the corresponding channel, the optimal channel identification module227may rank each of the plurality of BTSs107(in the array BA) and each of the plurality of channels105(in the array FA) based on order of sorting in the sorted array SA. The ranking assigned to each of the plurality of BTSs107and each of the plurality of channels105based on the sorted array of Table 6 may be as shown in Table 7:

TABLE 7Ranking of the BTSs and the ChannelsIndex12345BA Rank32415FA Rank45321

Here, for example, the BTS4 and the frequency f5 may be assigned with rank 1 since the BTS4 over the frequency f5 has resulted in the maximum Tij of 28, and their corresponding indices are registered in the BA Rank and FA Rank array as 1. Similarly, BTS2 and the frequency f4 may be assigned with rank 2, since the BTS2 over the frequency f4 has a Tij of 24, which is ordered as the second element in the sorted array SA and their corresponding indices are registered in the BA Rank and FA Rank array as 2. Likewise, each of the plurality of BTSs107and corresponding each of the plurality of channels105(or frequencies) are ranked, such that the value of Tij is maximized and none of the plurality of BTSs107or the plurality of channels105are repeated during the ranking.

In an embodiment, upon ranking each of the plurality of BTSs107and corresponding each of the plurality of channels105, the optimal channel identification module227may identify an optimal channel for each of the plurality of BTSs107based on the ranking of each of the plurality of channels105. As an example, the optimal channels identified for each of the BTSs: BTS1-BTS5 from the above example may be as indicated in Table 8 below:

TABLE 8Allocation of optimal channels to the BTSsBTSChannel/FrequencyRankBTS4f51BTS2f42BTS1f33BTS3f14BTS5f25

Here, channel ‘f5’ may be identified as the optimal channel for BTS4 since the pair (BTS4, f5), i.e., BTS4 on channel f5, has the highest rank among other pairs of the BTSs and the corresponding channels. Thus, BTS4 may be allocated with channel ‘f5’. Likewise, the optimal channels for each of the plurality of BTSs107are identified and allocated for ensuring that none of the plurality of BTSs107are on the overlapping frequencies.

In an embodiment, the process of identifying the optimal channels for each of the plurality of BTSs107may be performed at predetermined regular intervals to ensure that none of the plurality of BTSs107use the overlapping frequencies, thereby eliminating interference at each of the plurality of BTSs107.

FIG. 3shows a flowchart illustrating a method of dynamic channel allocation among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-To-Sea (LRLS) wireless network109in accordance with some embodiments of the present invention.

As illustrated inFIG. 3, the method300may include one or more blocks illustrating the method of dynamically allocating plurality of channels105among a plurality of BTSs107in the LRLS wireless network109using a channel allocation unit101shown inFIG. 1. The method300may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform specific functions or implement specific abstract data types.

At block301, the method300includes configuring, by the channel allocation unit101, a plurality of channels105to the plurality of BTSs107for communicating with one or more Customer Premises Equipments (CPEs)111. In an embodiment, the plurality of channels105configured to the plurality of BTSs107may have non-overlapping frequencies.

At block303, the method300includes scanning, by the channel allocation unit101, each of the plurality of channels105corresponding to each pair of the BTS and the CPEs111for obtaining one or more channel quality parameters211related to each of the plurality of channels105. As an example, the one or more channel quality parameters211may include, without limiting to, at least one of a downlink AWSINR of each of the plurality of channels105, an uplink AWSINR of each of the plurality of channels105, buffer size of the AWSINR metrics of each of the plurality of channels105, downlink channel capacity of each of the plurality of channels105, and uplink channel capacity of each of the plurality of channels105.

At block305, the method300includes computing, by the channel allocation unit101, at least one of an Aggregate Weighted Signal-to-Interference Noise Ratio (AWSINR) metrics213or channel capacity metrics215for each pair of the BTS and the CPEs111, across each of the plurality of channels105, based on the one or more channel quality parameters211. In an embodiment, the AWSINR metrics213may be computed as a sum of downlink AWSINR and uplink AWSINR of each of the plurality of channels105, normalized to buffer size of the AWSINR metrics of each of the plurality of channels105. In an embodiment, the channel capacity metrics215may be computed as a sum of downlink channel capacity and uplink channel capacity of each of the plurality of channels105. In some implementations, the AWSINR metrics213and the channel capacity metrics215may be computed at predetermined regular intervals based on the one or more channel quality parameters211obtained at the predetermined regular intervals.

At block307, the method300includes determining, by the channel allocation unit101, a throughput value217for the plurality of BTSs107across each of the plurality of channels105based on the channel capacity metrics215of the corresponding channel. In an embodiment, the throughput may be determined by computing the combined channel capacity of each of the plurality of channels105.

At block309, the method300includes identifying, by the channel allocation unit101, an optimal channel, from the plurality of channels105, for each of the plurality of BTSs107based on at least one of the AWSINR metrics213or the throughput value217. Finally, the identified optimal channel may be allocated to respective each of the plurality of BTSs107. In an embodiment, identifying the optimal channel for each of the plurality of BTSs107comprises ranking each of the plurality of BTSs107and corresponding plurality of channels105based on at least one of the AWSINR or the throughput value217, and identifying one of the plurality of channels105, having highest rank, as the optimal channel for the respective each of the plurality of BTSs107.

Computer System

FIG. 4illustrates a block diagram of an exemplary computer system400for implementing embodiments consistent with the present disclosure. In an embodiment, the computer system400may be channel allocation unit101shown inFIG. 1, which may be used for performing dynamic channel allocation among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-to-Sea (LRLS) wireless network109. The computer system400may include a central processing unit (“CPU” or “processor”)402. The processor402may comprise at least one data processor for executing program components for executing user- or system-generated business processes. A user may include a person, a user in the computing environment100, or any system/sub-system being operated parallelly to the computer system400. The processor402may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, etc.

In some embodiments, the processor402may be disposed in communication with a communication network409via a network interface403. The network interface403may communicate with the communication network409. The network interface403may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), Transmission Control Protocol/Internet Protocol (TCP/IP), token ring, IEEE® 802.11a/b/g/n/x, etc. Using the network interface403and the communication network409, the computer system400may obtain one or more channel quality parameters211related to each of the plurality of channels105through a gateway103associated with each of the plurality of BTSs107(not shown inFIG. 4).

In an implementation, the communication network409can be implemented as one of the several types of networks, such as intranet or Local Area Network (LAN) and such within the organization. The communication network409may either be a dedicated network or a shared network, which represents an association of several types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the communication network409may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc.

The memory405may store a collection of program or database components, including, without limitation, user/application interface406, an operating system407, a web browser408, and the like. In some embodiments, computer system400may store user/application data406, such as the data, variables, records, etc. as described in this invention. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle® or Sybase®.

The web browser408may be a hypertext viewing application. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), and the like. The web browsers408may utilize facilities such as AJAX, DHTML, ADOBE® FLASH®, JAVASCRIPT®, JAVA®, Application Programming Interfaces (APIs), and the like. Further, the computer system400may implement a mail server stored program component. The mail server may utilize facilities such as ASP, ACTIVEX®, ANSI® C++/C#, MICROSOFT®, .NET, CGI SCRIPTS, JAVA®, JAVASCRIPT®, PERL®, PHP, PYTHON®, WEBOBJECTS®, etc. The mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT® exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computer system400may implement a mail client stored program component. The mail client may be a mail viewing application, such as APPLE® MAIL, MICROSOFT® ENTOURAGE®, MICROSOFT® OUTLOOK®, MOZILLA® THUNDERBIRD®, and the like.

Advantages of the embodiment of the present disclosure are illustrated herein.

In an embodiment, the present disclosure provides a method for dynamically allocating channels among a plurality of Base Transceiver Stations (BTSs) in a Long-Range Land-To-Sea (LRLS) wireless network.

In an embodiment, the method of present disclosure helps in eliminating interference in the channels connecting the BTSs and their respective Customer Premises Equipments (CPEs), thereby optimizing network throughput in a region.

In an embodiment, the method of present disclosure helps in mitigating “flapping” effect or “ping-ping” effect in the LRLS wireless network and thereby improves Quality of Experience (QoE) to end users.

In an embodiment, the present disclosure provides a robust, centralized channel allocation unit that coordinates region-wide channel capacity metrics and helps in identifying the optimal channel for each of the plurality of BTSs.

In an embodiment, the method of present disclosure is based on Signal-to-Interference Noise Ratio (SINK) and Modulation and Coding Scheme (MCS) of the channels, and hence the solution proposed by the present disclose is portable across different technologies, involving different wireless network devices.

The enumerated listing of items does not imply that any or all the items are mutually exclusive, unless expressly specified otherwise. The terms “a”, “an” and “the” mean “one or more”, unless expressly specified otherwise.

REFERRAL NUMERALS