Research Article | Open Access
Shaojie Wen, Lianbing Deng, Shuo Shi, Xiying Fan, Hao Li, "Distributed Congestion Control via Outage Probability Model for Delay-Constrained Flying Ad Hoc Networks", Wireless Communications and Mobile Computing, vol. 2020, Article ID 8811840, 9 pages, 2020. https://doi.org/10.1155/2020/8811840
Distributed Congestion Control via Outage Probability Model for Delay-Constrained Flying Ad Hoc Networks
Drastic changes in network topology of Flying Ad Hoc Networks (FANETs) result in the instability of the single-hop delay and link status accordingly. Therefore, it is difficult to implement the congestion control with delay-sensitive traffic according to the instantaneous link status. To solve the above difficulty effectively, we formulate the delay-aware congestion control as a network utility maximization, which considers the link capacity and end-to-end delay as constraints. Next, we combine the Lagrange dual method and delay auxiliary variable to decouple the link capacity and delay threshold constraints, as well as to update single-hop delay bound with the delay-outage mode. Built on the methods above, a distributed optimization algorithm is proposed in this work by considering the estimated single-hop delay bound for each transmission, which only uses the local channel information to limit the end-to-end delay. Finally, we deduce the relationship between the primal and dual solutions to underpin the advantages of the proposed algorithm. Simulation results demonstrate that the proposed algorithm effectively can improve network performances in terms of packet time-out rate and network throughput.
The unique characteristics of unmanned aerial vehicle (UAV), such as easy deployment, high flexibility, and low cost, make it be more and more applied to military and civil fields [1–3]. However, single-UAV system cannot be extended to more applications due to its simple functions and limited coverage. In order to overcome the shortcomings of the single-UAV system and expand its application range, it can increase the number of UAVs to establish a multi-UAV system  in ad hoc way, called Flying Ad Hoc Networks (FANETs). In FANETs, each UAV can communicate with destinations through single-hop or multihop mode. At the same time, each UAV can be used as a source node or a relay node to help other UAVs transfer data packets. Compared with the multi-UAV system in cellular mode, FANETs have better flexibility and scalability, which allows UAVs to choose different communication modes according to actual needs and also allows UAVs to fly freely in a certain range to expand the working range. In addition, FANETs enable the UAV network to get rid of the regional restrictions on the deployment of ground base stations, and a small number of base stations can cover a large area. When it is inconvenient to deploy base stations in desert, ocean, disaster areas, or the ground base stations cannot work normally; FANETs can provide full coverage communication services to meet the needs of the terminals.
In wired and wireless networks, congestion is always an undesirable situation since it can deteriorate the communication environment, especially in the delay-constrained applications. Congestion can lead to packet drops and retransmission either at the MAC or upper layers. Designing and implementing a congestion control algorithm  is a challenging task, since many factors need to be taken into account. The congestion control mechanism cannot handle the properties of a shared wireless multihop channel well . Various situations may lead to packet loss and retransmissions like path break due to mobility, hidden terminal problem, or high error-prone wireless links. Dramatic changes in network topology and the poor wireless channel result in unsteady packet delivery delays and packet loss rate, which brings challenges to delay-aware congestion control in FANETs. In addition, it is difficult to limit the total transmission delay in a given threshold due to the unpredictable link status caused by high mobility of UAVs. Therefore, it is required to design a delay-aware congestion control method that can adapt to the time-varying link status and ensure the delay requirements.
In order to propose a reasonable solution, the framework of network utility maximization  is regarded as the mathematical form of the delay-aware congestion control problem. To this end, we use a Lagrange dual method  to decouple the link capacity constraint and a delay-outage model  to estimate the single-hop delay bound, after that the primal problem can be solved in a distributed way. Further, we propose a distributed optimization method with the consideration of the dramatic changes in network topology and unpredictable link status. Finally, we analyse the performances of the proposed optimization method and its convergence.
To the best of our knowledge, few previous works consider delay-aware congestion control problem in FANETs. In summary, our contributions are two-folds: (i)We formulate a network utility maximization framework with end-to-end delay constraint for FANETs. To match with the dynamic network topology, the Lagrangian dual method is exploited to decouple the link capacity constraint and a delay-outage model to estimate the single-hop delay bound. Then, the primal problem is transformed into a distributed solvable problems, which allows the senders to implement congestion control with delay-outage model(ii)We propose a distributed delay-aware congestion control algorithm that incorporates the single-hop delay bound to achieve the optimal solution. To maximize the network utility and reduce the transmission delay in distributed way, we introduce a delay auxiliary variable for all links and update the single-hop delay bound jointly combining the aggregated incoming flow and delay-outage probability. Finally, we analyse the performances of the optimization method and prove its convergence
The remainder of this paper is organized as follows. In Section 2, we introduce some previous work researched by others. In Section 3, we present the network model and some preparatory works for the design of the optimization method. In Section 4, we provide the detailed implementation process and the performance analysis of given optimization method. In Section 5, we show some simulation results for the proposed optimization algorithm. Finally, we conclude the paper and discuss the future work in Section 6.
2. Related Work
Congestion control has been studied a lot in traditional wired and wireless networks, and the previous works mainly used the framework of network utility maximization to adjust the rate of packets generated by nodes. In some research work, congestion control problem is formalized as utility maximization problem  and then solved by optimization tools to reduce network congestion. Based on the theory of network utility maximization, Mehta and Lobiyal  proposed a framework for wireless multihop networks considering scheduling, routing, congestion control, and power control jointly by considering the long-term or short-term random attenuation of wireless channels. D’Aronco et al.  proposed a new cross-layer framework to jointly optimize congestion control, routing, competition control, and power control in ad hoc networks, so as to overcome the performance limitations caused by the lack of cooperation between layers. Khodaian and Khalaj  analysed the delay in random access multihop networks, solved the delay-constrained utility maximization problem, and worked on achieving an optimal trade-off between delay, rate, and energy. Li et al.  considered congestion control with delay-sensitive/insensitive traffic and formulated a new network utility maximization problem which can be solved in a decentralized way. Zhang et al.  studied the joint optimization of congestion and power control in cognitive radio ad hoc networks under predictable contact constraints. At the same time, a distributed cross-layer optimization framework is proposed to achieve the joint design goal of hop by hop congestion control at the transport layer and power control at the physical layer. Rangisetti et al.  designed a centralized software-defined LTE wireless access network framework and proposed a new QoS aware load-balancing algorithm to solve the problem of load imbalance in the network. Kafi et al.  proposed a congestion control-based scheduling algorithm to solve the problem of throughput maximization. Hajiesmaili et al.  solved the rate allocation problem in heterogeneous QoS aware applications to maximize the network utility of convergence within a fixed time interval and make each data stream meet the requirements of long-term average end-to-end delay constraints. To solve the congestion problem in wireless multimedia sensor networks, Alaei et al.  proposed a distributed congestion control method. When congestion is detected, a local binary tree is established at the congestion node to eliminate congestion. In the next possible congestion node, the established tree is used to send their packets, while when the established tree cannot eliminate congestion, the mobile sink node is used to assist communication. Silva et al.  studied the congestion control in delay and disruption tolerant networks (DTNs) and introduced Smart-DTN-CC, a novel DTN congestion control framework that adjusts its operation automatically based on the dynamics of the underlying network. Leon et al.  proposed a new fair and distributed congestion control mechanism for Neighborhood Area Networks to provide fairness in the access to the network. Lubna et al.  considered to improve the throughput by implementing a novel technique to dynamically control the decrease factor of the congestion control algorithm depending on the interval between packet losses in multipath TCP. Verma and Kumar  introduced a new congestion control policy to adapt the transmission rate quickly whenever the available bandwidth and delay changes for Internet of Things, which is aimed at reducing packet drops and improving throughput.
3. System Model and Problem Formulation
3.1. Network Model
The notation is a finite set containing all the UAVs that freely fly in the specific space, is a link connecting a pair of UAVs, and represents the set , as shown in Figure 1. If the distance between UAV and UAV is less than communication radius, , where is a neighbor set of UAV . The notation denotes a session initialized by a source UAV, and is a set of all executing sessions. The path is a set of links travelled by session , and a set containing all sources that use link represents .
The single-hop delay over the link represents , and the total delay along the path , denoted by , should be less than the delay threshold . We assume that all sessions have the same delay threshold, and all UAVs have common power level. According to our previous work, the capacity of link , namely , can be regarded as invariant in specific time interval . The definitions of notations or parameters can be found in Table 1.
3.2. Single-Hop Delay Model
Each link is modeled as an M/G/1 queue, and all packets have an exponentially distributed length with a mean of bits. According to the results in [22, 23], we can get an approximate single-hop delay value for link during interval . where is the aggregated rate of all the sessions over the link .
3.3. Problem Formulation
Assume that each source can attain an utility function  by generating data flow at the rate of , where and are constant. It is noted that is a smooth, strictly concave, monotonically nondecreasing and one-order continuously differentiable function of . This work aims at maximizing the total utility functions of all sources under the link capacity constraint and the total delay along the path constraint; hence, the problem can be formulated as a utility maximization problem , which is described as
According to the concavity of utility function , the aggregated function in (2) is also concave. Due to the linear relationships of the constraints (3) and (4), the optimization problem is also a concave optimization.
4. The Solution of Problem
It is noted that the constraint (4) is end-to-end tightly coupled, which makes the formulation more complicated. Therefore, to decompose the relationship of the constraint (4), it is feasible to transform the primal complicated problem into local solvable problem. To achieve the goal, an auxiliary variable  is introduced, defined by , as the single-hop delay bound for each link . Hence, the following inequality holds, . Therefore, constraint (4) can be represented as and . To replace with the right side of the (1), the single-hop delay constraint over the link can be denoted as , and to rearrange the inequality, it can obtain the other form as
Because the value of is greater than zero, thus the relation is hold. Analyzing from the structure of (3) and (5), the former is a more compact constraint than the latter; hence, we can use (5) instead of constraint (3) in formulation , and the details can be denoted as
4.1. Lagrangian Solution
Due to the decentralized structure of FANETs, it is difficult to solve the congestion control problems with link capacity and delay constraints in a centralized way. Fortunately, the Lagrangian dual method  can overcome this obstacle by introducing a Lagrange multiplier vectors for constraint (6) to simplify the optimization process, denoted as . The Lagrangian form of can be presented as
By rearranging equation (8), a new form can be obtained as
As we all know, the expressions −max and min are equivalence. Therefore, the equation (9) can be divided into two optimization problems as follows
According to the feature of , is regarded as an unconstrained concave optimization; hence, the gradient decent method can be used to solve it. The optimal value of is calculated as
The notation denotes the value of Lagrange multiplier at nth iteration . where is a step-size factor, the operation [·]+ denotes , and
In dynamic environments, the drastic changes in network topology result in unstable channel states, and the choice of constant step size is of practical importance to guarantee the convergence and speed up the calculation [26, 27].
We can see that the optimal values of only relate to the aggregated step-size from (12); however, the update of step-size is related to both and as shown in (13). Based on this, it is necessary to further calculate the value of single-hop delay bound . From the structures of , it can be seen that the end-to-end information is required for the optimal value of due to the presence of constraint (4). In order to keep the performance not degraded in terms of delay caused by the collection of all channel information on the path, a solution that considers only local information needs to be found. Fortunately, we can use the results derived from , the probability of a packet being discarded at link due to the excessive single-hop delay threshold
The definitions of three parameters shown in (15) can be found in Table 1. From (15), we can see that the probability is proportional to the aggregated rate , but an inverse case to the link capacity and delay bound . The relationship in (15) meets our expectation, which proposes a method to derive the value of by limiting the size of probability . Assume that constant is the upper bound of allowed by the communication system for all the links and replace with (15) can be converted into
Use mathematical method to derive the expression of as where is the delay cumulative errors on the links passed by the packet before arriving at link . We define the initial value of the single-hop delay bound, namely , and the initial value of is calculated by replacing with . The single-hop error can be expressed as . The notation denotes the total hops passed by the packet from source to excluding the link ; hence, . Assume that the network system will trend to a steady-state in the limited time, the condition must be met for all sessions due to the presence of delay threshold . Next, substitute (17) into the objective of (11), we can see that the optimization trends to an optimal solution with the increase of . In addition, the solution of (17) can be used to update the iterations shown in (13). Therefore, when the rate of each source and Lagrange multiplier vector achieve optimality, the single-hop delay bound also has an optimal solution for each link .
Until now, we propose an effective method to solve the optimization problem , which allows the update processes of each parameter consider only local information. Nevertheless, the presence of the constraint in (11) would cause the sum of single-hop delay on the path to exceed the total delay threshold .
It is obvious that the challenge can be tackled by adjusting the value of ; if more packets are discarded due to the excessive threshold , a greater is required. The implementation processes can be found in Algorithm 1.
4.2. Algorithm Analysis
Before analyzing the performance of Algorithm 1, some basic relations should be provided to illustrate the obtained results. Let |·| denotes the Euclidean norm, and denotes the total iterations of Algorithm 1. The brief expression of is defined by , namely . Assume that there are two constants
and are the upper bounds of and , respectively.
To simplify the representations, we use the notations and to denote the total primal and dual functions. Also, both primal and dual functions of each link are denoted by respectively. According to the above definitions, we can create two relations: . Through analysing Algorithm 1, we can obtain the following results.
Lemma 1. Jointly considering two constants, Gmax and , the upper bound of ϕ(γ) is given by where .
Proof. According to the expression of , Substituting for the relation (17), we can obtain Reorganize inequality to get Based on the form , it is easy to get . Combining the form (21), the inequality can be modified as For each single-hop transmission, inequality holds, we can get and the right side of inequality (22) is greater than 0. Jointly considering inequality (5) and , the result (18) in Lemma 1 is proved.
To obtain the difference between primal and dual functions, let be a convex hull of all feasible transmission rates, .
Theorem 2. If a feasible delay bound set exists for all traffics, the total differences between average dual value and optimal primal value with considering the result derived in Lemma 1 can be given as where is the number of all sources.
Proof. Based on the concavity of the local gain function , the following inequality holds where refers to the value of at nth iteration. Using the relation between the primal and dual functions in (8) and the convexity of the dual function, (24) can be modified as Summing all the terms from 0 to and divided by can get Because the value of is constant, the left side of inequality remain unchanged. Given the iterative relation of the dual multiplier in (13), we have which implies that Combining the result in Lemma 1, we can obtain Combining (26) and (29), it follows that If approaches an enormous number, from (13) we can see that , and (30) has a new form Taking the total gains for all sources Referring to the preceding definitions, we have If we let , the final result can be concluded.
5. Analysis of the Experiment Result
In this paper, we use OMNET++5.0 to simulate the network scenario. In the initialization phase, nodes are distributed randomly and uniformly in an area of and move with a random way-point mobility model . The transmission radius of each UAV is 250 m, and the value of delay constraint for each session is set to 0.02 s. The sources can generate at most 25 packets per second, and the size of each packet is . In addition, we use the Rayleigh model to simulate wireless channel and estimate the link quality, respectively. The detailed definitions of simulation parameters can be found in Table 2. We compare the proposed method with delay-constrained congestion control (DCCC) algorithm proposed in  and delay-constrained utility maximization (DCUM) in . To get more accurate results, we perform the experiment twenty times for each parameter under the same network configuration, and the final results are collected by calculating the mean values based on the twenty groups of results.
Before comparing with other similar algorithms, it is interesting to get an intuitive view on the relationship between the estimated delay in (1) and the single-hop delay bound calculated in (17). If the aggregated rates over the links are constant, we obtain the delay bound and estimated delay with different values of . Upon the structure of equation (16), we can see that there is an inverse proportion between and ; hence, the values of decrease with the increasing of ; the results are displayed in Figure 2. This work aims at controlling the congestion level of entire network with the satisfaction of end-to-end delay constraint. Thus, the aggregated rates over the links are the main optimization objectives and different sizes of which impact on the amount of delay for single-hop transmission. Assume that the number of average hops travelled by each packet is defined as 7 and the size of sets to 0.08, we can obtain the results as shown in Figure 3. The purple dotted line denotes that the total delay threshold is assigned equally to each link on path , and other two lines denote the trends of variables and . From Figure 3, we can see that the sizes of and are proportional to the aggregated rate ; the results fit in with the expressions (1) and (17). With the increasing of the aggregated rate , the sizes of and gradually approach the average delay bound .
Therefore, we need to limit the size of to avoid the sum of single-hop delay along the path exceeding the threshold .
The delay constraint condition is an important factor to be considered in the design process of proposed optimization algorithm. Hence, each iteration at relay nodes not only considers the different network metrics but also takes attention to the delay requirement. If a node has received the packet correctly, it estimates the one-hop delay for its neighbors according to (1) and adjusts local delay bound with a given and current aggregated rate. DCCC and DCUM differ from our method; both methods only optimize an end-to-end delay without considering the dynamics in link status as in the proposed method. From Figure 4, it is noted that the value of the time-out ratio increases with faster speeds in three methods; the reason is that fast movement causes worse link quality, which introduces more retransmissions and delays. More nodes in the network can provide more chances for each relay node to make a wise transmitting decision. Hence, the time-out ratio decreases with the increasing number of nodes, as in Figure 5.
For adapting to the changes in network topology, we estimate the delay bound (17) with delay-outage model (16) for single-hop transmissions and use the delay bound as a single-hop constraint to optimize the congestion level of end-to-end transmission. Different from our method, DCCC and DCUM optimize the aggregated rate with an end-to-end mode, which is not suitable for FANETs. The time-varying link status in FANETs will cause the algorithm in DCCC and DCUM to obtain suboptimal network utility with inaccurate delay information and create more delays in transmitting packets. Depending on the above analysis, we can infer that the average end-to-end delay in the proposed method is less than in DCCC and DCUM. Therefore, the destination will receive more packets within delay constraint in our work. We can conclude that the average throughput achieved by the proposed method is greater than by DCCC and DCUM. Because the throughput is opposite to the total delay, faster speed is accompanied by smaller throughput and more nodes generate greater throughput as shown in Figures 6 and 7.
This work presents a distributed delay-aware congestion control algorithm for FANETs by using the Lagrange dual method, which can improve network throughput and limit the end-to-end delay to a given threshold. Specifically, the framework of network utility maximization is used as the mathematical form of primal problem. Further, the single-hop delay is estimated with delay-outage model to decouple the end-to-end delay constraint, which is combined with dual technique to solve the optimization problem in a distributed way. The simulation results demonstrate that the proposed algorithm significantly improves network throughput and effectively reduces packet time-out rate. Note that some open issues still exist, such as the link connectivity problem and the void region problem. In the future, more effort will be made to consider these problems and relevant techniques in the optimization framework and transmission strategy.
No data were used to support this study.
Conflicts of Interest
The authors declare that they have no conflicts of interest.
This research was funded by the National Key R&D Program of China (2018YEB1004003) (China grant: U1636215).
- “Small unmanned aerial vehicles for aerial imaging, recreation, and aerial games: Global market analysis and forecasts,” http://www.tractica.com/research/consumer-drones/.
- S. Hayat, E. Yanmaz, and R. Muzaffar, “Survey on unmanned aerial vehicle networks for civil applications: a communications viewpoint,” IEEE Communications Surveys & Tutorials, vol. 18, no. 4, pp. 2624–2661, 2016.
- M. Micheletto, V. Petrucci, R. Santos et al., “Flying real-time network to coordinate disaster relief activities in urban areas,” Sensors, vol. 18, no. 5, p. 1662, 2018.
- A. Guillen-Perez and M.-D. Cano, “Flying ad hoc networks: a new domain for network communications,” Sensors, vol. 18, no. 10, p. 3571, 2018.
- Y. Li, A. Papachristodoulou, M. Chiang, and A. R. Calderbank, “Congestion control and its stability in networks with delay sensitive traffic,” Computer Networks, vol. 55, no. 1, pp. 20–32, 2011.
- D. Kanellopoulos, “Congestion control for MANETs: an overview,” ICT Express, vol. 5, no. 2, pp. 77–83, 2019.
- F. P. Kelly, A. K. Maulloo, and D. K. H. Tan, “Rate control for communication networks: shadow prices, proportional fairness and stability,” Journal of the Operational Research Society, vol. 49, no. 3, pp. 237–252, 1998.
- A. Ribeiro and G. B. Giannakis, “Separation principles in wireless networking,” IEEE Transactions on Information Theory, vol. 56, no. 9, pp. 4488–4505, 2010.
- J. Tian, H. Zhang, D. Wu, and D. Yuan, “Interference-aware cross-layer design for distributed video transmission in wireless networks,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 26, no. 5, pp. 978–991, 2016.
- S. D'Aronco, L. Toni, S. Mena, X. Zhu, and P. Frossard, “Improved utility-based congestion control for delay-constrained communication,” IEEE/ACM Transactions on Networking, vol. 25, no. 1, pp. 349–362, 2017.
- R. Mehta and D. K. Lobiyal, “Cross-layer optimization using two-level dual decomposition in multi-flow ad-hoc networks,” Telecommunication Systems, vol. 66, no. 4, pp. 639–655, 2017.
- A. M. Khodaian and B. H. Khalaj, “Delay-constrained utility maximisation in multi-hop random access networks,” IET Communications, vol. 4, no. 16, pp. 1908–1918, 2010.
- L. Zhang, F. Zhuo, and H. Xu, “A cross-layer optimization framework for congestion and power control in cognitive radio ad hoc networks under predictable contact,” EURASIP Journal on Wireless Communications and Networking, vol. 2018, no. 1, 2018.
- A. K. Rangisetti, T. V. Pasca, and B. R. Tamma, “QoS aware load balance in software defined LTE networks,” Computer Communications, vol. 97, pp. 52–71, 2017.
- M. A. Kafi, J. Ben-Othman, A. Ouadjaout, M. Bagaa, and N. Badache, “REFIACC: reliable, efficient, fair and interference-aware congestion control protocol for wireless sensor networks,” Computer Communications, vol. 101, pp. 1–11, 2017.
- M. H. Hajiesmaili, M. S. Talebi, and A. Khonsari, “Multi-period network rate allocation with end-to-end delay constraints,” IEEE Transactions on Control of Network Systems, vol. 5, no. 3, pp. 1087–1097, 2018.
- M. Alaei, P. Sabbagh, and F. Yazdanpanah, “A QoS-aware congestion control mechanism for wireless multimedia sensor networks,” Wireless Networks, vol. 25, no. 7, pp. 4173–4192, 2019.
- A. P. Silva, K. Obraczka, S. Burleigh, J. M. S. Nogueira, and C. M. Hirata, “A congestion control framework for delay- and disruption tolerant networks,” Ad Hoc Networks, vol. 91, article 101880, 2019.
- J. P. A. León, T. Begin, A. Busson, and L. J. de la Cruz Llopis, “A fair and distributed congestion control mechanism for smart grid neighborhood area networks,” Ad Hoc Networks, vol. 104, article 102169, 2020.
- T. Lubna, I. Mahmud, and Y. Z. Cho, D-LIA: Dynamic Congestion Control Algorithm for MPTCP, ICT Express, 2020.
- L. P. Verma and M. Kumar, “An IoT based congestion control algorithm,” Internet of Things, vol. 9, article 100157, 2020.
- V. B. Sukumaran and U. Mukherji, “Asymptotic bounds on the power-delay tradeoff for fading point-to-point links from geometric bounds on the stationary distribution of the queue length,” IEEE Transactions on Information Theory, vol. 61, no. 11, pp. 6145–6167, 2015.
- F. Qiu, J. Bai, and Y. Xue, “Towards optimal rate allocation in wireless networks with delay constraints: a double-price approach,” Ad Hoc Networks, vol. 13, pp. 282–295, 2014.
- M. Chiang, “To layer or not to layer: balancing transport and physical layers in wireless multihop networks,” in IEEE INFOCOM 2004, pp. 1–12, Hong Kong, China, 2004.
- Y. Zhang, S.-R. Kang, and D. Loguinov, “Delay-independent stability and performance of distributed congestion control,” IEEE/ACM Transactions on Networking, vol. 15, no. 4, pp. 838–851, 2007.
- G. Tychogiorgos and K. K. Leung, “Optimization-based resource allocation in communication networks,” Computer Networks, vol. 66, pp. 32–45, 2014.
- S. Zuo, I.-H. Hou, T. Liu, A. Swami, and P. Basu, “Joint rate control and scheduling for real-time wireless networks,” IEEE Transactions on Wireless Communications, vol. 16, no. 7, pp. 4562–4570, 2017.
- K. Peters, A. E. K. Cetinkaya, and J. P. G. Sterbenz, “A geographical routing protocol for highly-dynamic aeronautical networks,” in 2011 IEEE Wireless Communications and Networking Conference, pp. 492–497, Cancun, Mexico, 2011.
Copyright © 2020 Shaojie Wen et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.