The present invention relates to heterogeneous networks having at least one bottleneck and more particularly to dynamic heterogeneous networks having rate allocating routers and/or switches for bottleneck mitigation.
Networked systems, such as a smart grid, the internet of things, internet-above-the-cloud, and smart cities, are used to handle the increasing flows of services distributed throughout communication networks. More particularly, autonomous networked systems have long been used for routing communications from a plurality of sources to a plurality of destinations. But during routing, bottlenecks can occur at various links between the sources and destinations.
The underlying principle of autonomous networks is that the network can autonomously enable the subset of S users or sources, S, as indexed by s∈S to generate communication loads on a corresponding subset of possible routes R, which are indexed by rs∈R and s∈S. These communication loads conscientiously demand a threshold of bandwidth or bandwidth per unit time over a subset of routes R. The communication loads rely on a subset of network resources or unidirectional links L, with each link l∈L having a finite capacity, cl. Consequently, in the relevant zero-one routing matrix, A is constituted of Als=1 when link l−L is in the route rs∈R of the user, otherwise the source s∈S, and Als=0.
The problem for the network is to compensate for normal fluctuations in the allocated aggregate source rates at the bottleneck link without exceeding the inherent capacity of the system. Thus, it is desirable to have a method of compensating for both rate-based flow control and explicit congestion indication feedback techniques, while considering the change in source rate xs(t) in one time interval will be modest and {tilde over (x)}s(t−1) will be close to {tilde over (x)}s(t) and s∈S.
Prior art attempts have used a unified formulation with the state-space realization as a structure for high dynamics bottleneck links l involving various forms of aggregate state variables, aggregate observed outputs, and feedback control inputs. But such attempts rely upon rate allocating output queues to respond to changing conditions only after the fact. An approach which considers demand rate, service rate and a stochastic control paradigm is needed. Such an approach which preferably uses a state-space realization for the high dynamics of bottleneck link l incorporating various forms of aggregate state variables, aggregate observed outputs and feedback control inputs is needed.
Furthermore, there is a need to provide for adaptive rate correction with explicit congestion indication feedback for a multi-link topology and for distributed window flow control responses to accommodate a plurality of competing flows and sources. In order to address system heterogeneity and the unpredictable dynamics of networked systems, such an algorithm may set analytical performance bounds. Targeting a unified formulation, the state-space realization for high dynamics of bottleneck link l involves various forms of aggregate state variables, aggregate observed outputs, and feedback control inputs
In one embodiment the invention comprises dynamic heterogeneous network for transmitting media over satellite networks and terrestrial networks, the system comprises: at least one satellite for receiving and transmitting a media signal; at least one terrestrial media service provider for receiving and transmitting a media signal; a link intermediate the at least one satellite and at least one media service provider, whereby a media signal transmitted from the media service provider is transmitted through the link to said satellite, and a non-transitory computer readable medium operably associated with the link and configured to autonomously allocate a respective buffer size to each of the media signals according to a closed loop allocation algorithm having predetermined rate allocation performance specifications. In another embodiment the invention comprises a method therefor.
The notations ( )T, ( )*, ( )H and E[.i] stand for the transpose, conjugate, conjugate transpose and expected value operators, respectively. The end of the epoch is herein referred to as time t. The term bottleneck 13 refers to the data limiting node between a source 15 and a destination 16 in a multi-node network 10.
Referring to
The system of the present invention has a plurality of rate allocating routers 17 to channel communications between a first plurality of sources 15 and a second plurality of destinations 16. The first plurality and second plurality may be equal or unequal in number, with the plurality of destinations 16 typically being greater than the plurality of sources 15.
During the period of communication between sources 15 and destinations 16, time is divided into epochs, t, comprising a multiplicity of round trip times (RTT) where each RTT is related to the sum of propagation and queueing delays. In a degenerate case, the epoch time is taken as RTT. The goal is to maximize spectral efficiency, which is the rate at which information can be transmitted over a given bandwidth in bits per second per hertz.
Routers 17 may become a bottleneck 13 intermediate the sources 15 and the destinations 16. The routers 17 can be classified into different levels. A Level 1 router 17 is a router 17 disposed in a predetermined area which does not connect to another area. Level 1 routers 17 function as stub routers 17 and only communicate with other Level 1 routers 17. A Level 2 router 17 is a backbone router 17 which does not connect to other areas. Level 2 routers 17 track information and only communicate other Level 2 routers 17. A Level 1-2 router 17 is a normal router 17 or a backbone router 17 which connects to other areas. Level 1-2 routers 17 communicate with both Level 1 routers 17 and Level 2 routers 17, thereby connecting different areas of the network 10. The boundaries of the areas can be at the routers 17 or can be between the routers 17.
Streams of communications in such a network 10 are modeled as a regular flow of packets from a source 15 to one or more destinations 16 over a series of routes connected by links and one of which has a bottleneck 13 link with its rate allocating router 17 or switch. Sources 15 (also known as users of networked systems) are considered to always have data to send. A service rate is taken as the inverse of the time between consecutive packets serviced throughout the same communication.
The networks 10 described and claimed herein are adaptive networks 10. By adaptive, it is meant that the networks 10 engage in dynamic autonomous routing whereby a router 17 can forward data via a different path than the path currently under load. The router 17 can change paths based upon dynamic conditions and change back as warranted. Changes may occur due to congestion and overloading or even due to complete loss of a connection between nodes.
Routing decisions are based upon instantaneous network 10 traffic and overall network 10 topology. The routing decisions use protocols to determine optimal pathways between sources 15 and destinations 16. Dynamic routing provides compensation for choking and/or loss of service by transferring the signals among plural routes to continue service during changing conditions.
Protocols suitable for use with the present invention include an Intermediate System to Intermediate System Protocol (IS-ISP), which is generally used for large networks 10, a Routing Information Protocol (RIP) which is generally used for short distance transport and link-state routing protocols, such as an Open Shortest Path First Protocol (OSPFP), which divide the system into areas which include networks 10, hosts and routers 17. The IS-ISP is a link-state routing protocol, where the routers 17 exchange topology information with neighboring routers 17. This exchange provides all routers 17 with the information of the complete topology. The next address to which data are forwarded is determined by choosing the best end-to-end path to the final destination 16. The complete data knowledge provides routes which satisfy predetermined criteria and meet quality of service requirements. The RIP is a distance-vector dynamic routing protocol which uses hop count as a routing metric to find the best path. The path with the lowest hop count is placed in the routing table. Routing loops are prevented by limiting the allowable number of hops. The OSPFP relies upon routers 17 to exchange traffic data with adjacent routers 17. These data are then used throughout the network 10 to calculate end-to-end paths using the Dijkstra algorithm or a variation thereof. This particular algorithm calculates routes considering the entire network 10 by choosing the best end-to-end path to the final destination 16 at that specific epoch. However, as more routers 17 are eventually added to the network 10, the size and number of nodes in the network 10 increases. Thus, the OSPFP generally does not scale well.
Referring to
Various sources 15 transmit data at various rates, depending upon amount of information to be conveyed during each epoch. The change in source 15 rate is relatively small over a single time interval and for a particular time interval is given by:
{tilde over (x)}s(t+1)={tilde over (x)}s(t)+bsus(t); s∈S Eq. 1
where, per epoch t, us(t) is a form of self-adaptation to enable each source 15 to reconfigure itself during use.
Referring to
bl(t+1)=[bl(t)+yl(t)−cl−μl(t)]+ Eq. 2
where [z]+=max {z, 0}, bl(t) is the buffer 18 size at the bottleneck 13 link l in period t and cl is the true link capacity available to serve all the input rates from the sources 15s.
A setpoint is determined for each router 17 to provide the desired bandwidth allocation for the aggregate service rate. Changes in the actual setpoint μl(t) fluctuate around the desired setpoint μ0 due to the traffic effect of all uncorrelated demand rates, xs(t). The choice of the setpoint, μ0 preferably considers a mean packet delay, packet loss and bandwidth loss while maintaining sending rates according to service level agreements.
Thus, the desired setpoint is given by:
μl0=Σs∈S;l∈LAlsμ0 Eq. 3
where vl(t) is the service rate is given by:
vl(t)=ΣDd=1θdvl(t−d)+πlζl(t) Eq. 4
and the non-zero autoregressive parameters, θd in (4) correspond to time lags d and d=1, . . . , D for the aggregate service rates, vl(t) at the bottleneck 13 link l, πl is a scaling parameter accounting for stochastic effects, and the change in actual setpoint is given by:
a. μl(t)=μ0+vl(t). Eq. 5
Whereas, the actual buffer 18 setpoint b0l is given by:
b˜(t+1)=[b˜l(t)+Σs∈S,l∈LAls{tilde over (x)}s(t)−vl(t)−cl]+ Eq. 6
where vl(t)=ΣDd=1θdvl(t−d)+πlζl(t), and for each epoch t {tilde over (b)}l(t)=bl(t)−b0l and {tilde over (x)}s(t)=xs(t)−μ0s; s∈S and the buffer 18 size solution is centered on setpoint b0l and oscillates around a desired buffer 18 size of b0. The buffer 18 size should not be too large, otherwise the packet will be too large to prevent packet losses and not be too small, otherwise potential throughput may be squandered.
Changes in buffer 18 service rate and buffer 18 sizes at epoch t and epoch t+1 are uncorrelated. A white noise assumption, also known as a Gaussian assumption, may be used to model first order dynamics of the noise distributions in the system. And the Gaussian assumption is used to model the inevitable white Gaussian random disturbance ζ(t) at epoch t leading to an autoregressive estimation with the dynamical state and output variables ηl(t) and vl(t) respectively given by:
1. 0
The Gaussian assumption may be further used to model first order dynamics of the noise distributions in the system.
Referring to
a. x{hacek over ( )}s(t)=xs(t)+ϵlus(t) s∈S Eq. 9
b. b{hacek over ( )}l(t)=˜bl(t)+ρlζl(t), and Eq. 10
c. v{hacek over ( )}l(t)=vl(t)+ωl(t). Eq. 11
where us(t), s∈S, ζl(t) and ϑl(t) each represent zero mean stochastic Gaussian white noises.
Referring to
xl(t+1)=Alxl(t)+Blul(t)+Glζl(t) Eq. 12
wherein Al is the state matrix, Bl is the control matrix and Gl is the observation matrix. One of skill will recognize the Markovian dynamics depend upon current state xl(t), the decision tree ul(t) and an independently identically distributed zero mean random variable ζl(t).
Once the load is known, the bottleneck 13 link l may select one or more rate correcting actions Ul from a predetermined set of admissible values. The predetermined admissible values preferably consider performance parameters such as actual source 15 rates, bottle-neck link capacity, bottleneck 13 service rates; deviations from a desired buffer 18 size; and a penalty for high jitter/variability of source 15 sending rates.
Thus a multi-objective performance measure of these performance parameters can be given by:
a. Jl(n0)=ΣNn=n0+1{w1∥Σs∈S;l∈LAlsx˜s(n)−cl−vl(n)∥2+w2∥˜bl(n)∥2+w3∥ul(n)∥2 Eq. 13
wherein Jl(na) is the probability density function and may be a chi-squared random variable, N=the number of time slots within an epoch and the weights w1, w2, w3∈R+ are initially each set at unity and adjusted based upon real time feedback as helpful to optimize real-time iterative feedback of tracking penalty, buffer 18 size deviation penalty and jitter/variability penalty, to approximate the desired setpoints. For example, if voice communications lag due to signal delays, videos freeze due to buffer 18 overflow and/or excessive noise occurs, the three weights can be adjusted up or down based upon real time empirical feedback.
Referring to
a. E{J2l|Zl(n0)}−E2{Jl(n0)|Zl(n0)} Eq. 14
where E{⋅|⋅} is the conditional expectation operator taken over the random state xl(n0).
Referring to
a. x{circumflex over ( )}l(n|n−1)=Alx{circumflex over ( )}l(n−1|n−1)+Blul(n−1). Eq. 15
Referring back to
a. qs(t)=Σs∈S;l∈LAlspl(t) Eq. 16
provided the loss rate pl(t) at epoch t pertaining to the bottleneck 13 link l in the path of s is appropriately updated for instantaneous conditions.
The present invention advantageously provides for overcoming the problems of bottleneck 13 links/subject to rate allocating routers 17 and switches while considering aggregate input rate, aggregate service rate time lags and buffer 18 size stabilization using the above space state realization.
In another embodiment the invention comprises a non-transitory computer readable medium 30 suitable for and configured to carry out the computations and determinations of any of the foregoing, including only as limited by the claims below, algorithms, calculations, estimates such as but not limited to Kalman estimates, iterative/recursive exercises, solving of equations/inequalities and determinations of any of the parameters listed in the claims below.
Exemplary non-transitory computer readable media 30 are physical, transferable, reproducible, may comprise all computer readable media 30 except for a transitory propagating signal and particularly include flash drives, CD's, DVDs, internal/external hard drives, more particularly internal/external solid state hard drives, and further exclude RAM, volatile memory requiring power for data storage, signals and effervescent carrier waves. In an alternative embodiment, transitory computer readable media 30 may also be used.
To the extent that the figures illustrate diagrams of the functional blocks of the various embodiments, the functional blocks are not necessarily indicative of the division between hardware circuitry. Thus, for example, one or more of the functional blocks (e.g., processors or memories) may be implemented in a single piece of hardware (e.g., a signal processor or a block of random access memory, hard disk, or the like) or multiple pieces of hardware. Similarly, the programs may be standalone programs, may be incorporated as subroutines in an operating system, may be functions in an installed software package, and the like. It should be understood that the various embodiments are not limited to the arrangements and instrumentality shown in the drawings.
This application claims priority to and the benefit of U.S. Provisional Application No. 63/158,188, filed Mar. 8, 2021, the disclosure of which is incorporated herein by reference and claims priority to and the benefit U.S. Provisional Application No. 63/158,213, filed Mar. 8, 2021, the disclosure of which is incorporated herein by reference.
The invention described herein may be manufactured and used by or for the Government of the United States for any government purpose without the payment of any royalty.
Number | Name | Date | Kind |
---|---|---|---|
7949318 | Prasad | Apr 2011 | B2 |
8140070 | Ashikhmin et al. | Mar 2012 | B2 |
9743362 | Tian | Aug 2017 | B1 |
9991587 | Freedman | Jun 2018 | B1 |
20070189164 | Smith | Aug 2007 | A1 |
20080165875 | Mundarath | Jul 2008 | A1 |
20090080334 | DeCusatis | Mar 2009 | A1 |
20100091678 | Chen | Apr 2010 | A1 |
20100303002 | Zorba Barah | Dec 2010 | A1 |
20110205889 | Chen | Aug 2011 | A1 |
20110205895 | Chen | Aug 2011 | A1 |
20140059377 | Zhang | Feb 2014 | A1 |
20170288769 | Miller | Oct 2017 | A1 |
20180132110 | Furuichi | May 2018 | A1 |
20180152230 | Khojastepour | May 2018 | A1 |
20180152231 | Jeong | May 2018 | A1 |
20220039095 | Pham | Feb 2022 | A1 |
Entry |
---|
X. Tian, G. Chen, K. D. Pham, and E. Blasch, “Joint Transmission Power Control in Transponded SATCOM Systems,” IEEE Military Communications Conference, DOI: 10.1109/MILCOM.2016.7795313, Baltimore, MD, 2016. |
Pham KD. “Power allocation for shared transponders: A statistical optimal control paradigm.” In2018 IEEE Aerospace Conference Mar. 3, 2018 (pp. 1-10). IEEE. |
K. D. Pham, “Assured Satellite Communications: A Minimal-Cost-Variance System Controller Paradigm,” American Control Conference, pp. 6555-6561, DOI: 10.1109/ACC.2016.7526702, Boston, MA, 2016. |
K. D. Pham, “Minimal-Variance-Cost Power Control for Differentiated Services Satellite Communications,” IEEE Aerospace Conference, pp. 1-8, DOI:10.1109/AERO.2016.7500831, Big Sky, MT, 2016. |
K. D. Pham, “Minimal Variance Control of Clock Signals,” IEEE Aerospace Conference, pp. 1-8, DOI:10.1109/AERO.2016.7500498, Big Sky, MT, 2016. |
L. Cosenza, M. K. Sain, R. W. Diersing, and C. H. Won, “Cumulant control systems: the cost-variance, discrete-time case,” Advances in Statistical Control, Algebraic System Theory, and Dynamic System Characteristics, C.- H. Won et al. (eds), Birkhauser Boston, DOI: 10.1007/978-0-8176-4795-7, 2008. |
G. Giorgi and C. Narduzzi, “Performance Analysis of Kalman-Filter-Based Clock Synchronization in IEEE 1588 Networks,” in IEEE Transactions on Instrumentation and Measurement, vol. 60, No. 8, pp. 2902-2909, Aug. 2011, doi: 10.1109/TIM.2011.2113120. |
K. D. Pham, “Control Engineering for Hybrid Ground and Space Precoding in Multi-Gateway Multi-Beam Satellite,” 2021 IEEE Aerospace Conference (50100), 2021, pp. 1-9, doi: 10.1109/AERO50100.2021.9438378. |
K. D. Pham, “Risk-Sensitive Rate Correcting for Dynamic Heterogeneous Networks: Autonomy and Resilience,” 2020 IEEE Aerospace Conference, 2020, pp. 1-10, doi: 10.1109/AERO47225.2020.9172717. |
K. D. Pham, “A Control-Theoretic Approach to Precoding for Multi-Cast Multi-Beam over Satellite,” 2020 IEEE Aerospace Conference, 2020, pp. 1-11, doi: 10.1109/AERO47225.2020.9172594. |
Number | Date | Country | |
---|---|---|---|
Parent | 63158188 | Mar 2021 | US |
Child | 17653361 | US | |
Parent | 63158213 | Mar 2021 | US |
Child | 63158188 | US |