SciELO - Scientific Electronic Library Online

 
vol.83 issue199Patch antenna with reconfigurable sense of rotation for CubeSat satellite applicationsA polynomial chaos expansion approach to the analysis of uncertainty in viscoelastic structural elements author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


DYNA

Print version ISSN 0012-7353

Dyna rev.fac.nac.minas vol.83 no.199 Medellín Dec. 2016

http://dx.doi.org/10.15446/dyna.v83n199.53832 

DOI: http://dx.doi.org/10.15446/dyna.v83n199.53832

RWA: Optical Networks with Heuristics Algorithms

RWA: Redes Ópticas con Algoritmos Heurísticos

 

Arturo Benito Rodríguez-García a, Leonardo Juan Ramírez-López b & Jaime César Espinoza-Oyarzún a

 

a Faculty of Technology, Universidad de Santiago de Chile, Chile. arturo.rodriguez@usach.cl, jaime.espinoza@usach.cl
b Faculty of Engineering, Universidad Militar de Nueva Granada, Colombia. leonardo.ramirez@unimilitar.edu.co

 

Received: October 27th, 2015. Received in revised form: March 20th, 2016. Accepted: July 21th, 2016.

 

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.


Abstract
The increase in demand for data transport through WDM (Wavelength Division Multiplexing) networks has led to the emerging problems related to finding routes and assigning wavelengths in these networks, which are solved through algorithmic processes. Conventional algorithms only satisfy the conditions of static traffic. However, the heuristic algorithms may be processed in dynamic traffic scenarios. This paper proposes a comprehensive strategy to address DLE (Dynamic Lightpath Establishment), i.e., without dividing the problem, using several heuristic algorithms. The results shown indicate that the heuristic algorithms respond better under stress in dynamic scenarios, but with high network use.

Keywords: Simulated Annealing; Genetic Algorithm; NSFNET; Wavelength; Tabú Search.

Resumen
El aumento de la demanda en el transporte de datos a través de las redes ópticas WDM (Wavelength Division Multiplexing) ha llevado a nuevos problemas relacionados con la búsqueda de rutas y la asignación de longitudes de onda en estas redes, estos problemas se resuelven a través de procesos algorítmicos que pueden ser convencionales o heurísticos. Los algoritmos convencionales sólo satisfacen los requerimientos en condiciones de tráfico estático. Sin embargo, los algoritmos heurísticos pueden ser procesados en escenarios de tráfico dinámico. Este documento propone una estrategia global para hacer frente al DLE (Establecimiento de Caminos de Luz dinámicos), es decir, sin dividir el problema, utilizando varios algoritmos heurísticos. Los resultados mostrados indican que los algoritmos heurísticos responden mejor bajo estrés en escenarios dinámicos, pero con un uso de la red alto.

Palabras calve: Simulado; Algoritmo genético; NSFNET; Longitud de onda; Búsqueda Tabú.


 

1. Introduction

Data transport networks have enabled the development of diverse technology, reaching photonic networks. The latter, operated through SDH/SONET, allow up to 2.5 Gbps for wavelength and at greater longitudes, WDM (Wavelength Division Multiplexing) appears.

One of the most important networks that uses these methodologies is NSFNET (National Science Foundation NETwork). The most important problems in these networks is the RWA (Routing Wavelength Assignment) solution, with continuity constraints of wavelength and reusing wavelength, the latter not having been studied because the offer of the service is higher than the demand and reusing the wavelength does not substantially improve the current solutions [1].

In photonic networks, switching becomes relevant compared to routing, which for now is relegated to providing access to transport networks. For this reason, switching has prevailed, due to its control simplicity and response speed [2]. In the future, IP layer continuity seems weak because access technology will evolve toward optic connectivity [22]. In transport, traffic is evolving rapidly from static to dynamic. This implies a change in the solution universes, transforming from an optimizable one, with conventional algorithms to a non-optimizable one with heuristic algorithms [3].

Therefore, the current research is directed toward dynamic traffic studies, where the RWA problem is present, with wavelength reuse [4,5]. The latter carries a reconnection time increase, so it is not widely used. To route the information, a path and a wavelength is necessary in each link of the lightpath. In literature there are two strategies. The first divides the problem in two parts (path search and wavelength assigning) and the second solves the problem in only one algorithm process, that is, comprehensively (without separating the problem). Of course, this has advantages such as obtaining more paths, but not necessarily available wavelengths, and the second obtains paths and wavelengths but at higher computer costs. The algorithms studied in this article work under conditions of restricted wavelength continuity (CCW). This guarantees that in each link of the selected route uses the same wavelength, but it has the disadvantage of reducing the universe of possible solutions and with low connection establishing time [4,5]. In general, this problem has been solved by subdividing the problem in two parts. The first solves the path based on minimizing a pre-established condition such as cost, retardation, etc. The second solves the wavelength assigning problem through algorithms like First Fit (FF), Next Fit (NF), among others [4-6]. There are other proposals that solve the problem comprehensively, achieving good results under conditions of stress [7-9]. The article compares the results of different heuristics through simulation and makes visible better dynamic traffic conditions for optical networks.

 

2. The optical network problem

The increase in demand continues its path toward accelerating connection requests, driving the quest for paths and related wavelengths that are increasingly faster and more numerous to strengthen transport of optical networks. The routes ate made up of one or more links between OXC (Optical Cross Connect) of the network; wavelengths are luminous signals that pass through links at different frequencies. Fig. 1 shows part of an optical network where OXC are differentiated as A, B, C and D are connected with optical fiber links that support both wavelengths (l0 and l1).

Depending on the OXC technology, these may commute fibers, wavelengths, wavelength bands, TDM time channels.

For this case, wavelengths will be commuted. Optical fiber routes are made up of optical links that are directed toward light rays (data) through the same wavelength according to CCW, the pair (R, l), is called lightpath (LP) [10], where R is the set of conforming links and l is the wavelength used in the route.

However, the possibility of finding available LP is exhausted when the demand outstrips the availability. This is when the request is blocked. Routing systems have been developed reusing wavelength, where the change in l is allowed, however, studies have not shown meaningful changes in the performance of the routing [11].

Fig. 1 shows 4 OXC that are part of a greater system, the established routes (LP) with their respective wavelength (scripted) are (A-D, l0) and (A-D-C, l1). It is observed that a service request reaches node A toward node B. Node A has a path A-D-C-B, therefore a wavelength must be assigned, however, it is observed that link A-D does not have available wavelength, so another wavelength must be used, or a different route must be found. This problem is called containment.

 

3. Modeling demand

The network has current traffic, future demand or request that determines the static and dynamic simulation scenario, the RWA problem is called SLE (Static Lightpath Establishment) if the traffic is static and DLE (Dynamic Ligthpath Establishment) if the traffic is dynamic [5]. Traffic is dynamic when average requested connection time (tC) is lower than the average of received service requests (tLL).

The scenario is not optimizable (NP-Complete), therefore heuristic algorithms are used and of which most offer solutions that are not necessarily optimum. Computer complexity is an important element of this problem, because when it is subdivided, it able to be reduced. On the other hand, multiple paths that obtain heuristic algorithms are of great support, when the problem of containment is presented, and this way, avoiding executing a new algorithm process. The characteristics of the demand variables are similar to those used in the works [3-5].

3.1. Network demand

The edge nodes (Edge OXC) receive requests (with Poisson distribution, however different probability scenarios could be studied). These requests carry 3 parameters to be satisfied, or else the request must be blocked.

Where:

Is the vector that represents the i- number of demand Reaches the s-number edge node.
Identification number of the origin node of the Incoming demand.
Identification number of the destination node of the Incoming demand.
Number of connections requested towards.
Connection time requested for the pair .

The problem is to establish paths and wavelengths, observing the indicators used in the works [3]-[5], as least probability of request blockage and network use.

 

4. Heuristics used

The problem is to establish paths and wavelengths, observing the indicators used in the works [3-5], as least probability of request blockage and network use. The research is based on DLE, the same that has been tested under different strategies and heuristics to satisfy the demand of an optical network and has used optimization criteria and algorithms described in [3,7].

Fig. 2 shows a classification of the strategies found in literature, to solve the problems of SLE and DLE, such as: Ant [12-14], Genetic [3,7], Tabú Search [1,15-19] and Simulated Annealing [8], all work with the strategy of dividing the problem in 2 parts, except, [3,7,8] that do it comprehensively that is, without dividing the problem and solving it in only one algorithm process. Also, other heuristic algorithms are found, one of which is mimetic algorithm Snake One, based on the displacement of cost in the matrix and its similarity with snake movement [23].

The diagram of Fig. 3 also shows the processes found in literature to solve the RWA problem. As observed, it will use the division strategy until it is completely solved, using different criteria and holistic algorithms to obtain a path and a wavelength. It should be noted that in optical networks, optimization is not necessarily sought, but a path that works without generating an important increase in the probability of blockage without increasing network usage. Table 1, shows the studied heuristic algorithms.

4.1. Genetic Algorithm (GA)

In this algorithm, the nodes are arranged in a vector of N elements, where N is the number of Nodes in the Network. This vector represents the Chromosome and each element represents the genes. For example, the optical network with 6 nodes, labeled from 0 to 5.

One chromosome filled randomly could be (3,2,0,2,3,5), where the first and the last element represent the origin and destination of the sought path. A set of chromosomes form a two-dimensional matrix, with the objective of finding the solution vector named population. The population is subjected to change that come from exchanging genes of adjacent chromosomes and each time the cost of the path is evaluated and ordered from lowest to highest costing path.

Then, a threshold of population mortality is established, where the most apt chromosomes prevail, that is, the ones that generate the least cost. As the algorithm is repeated, the chromosomes will reproduce within the lowest costing paths.

This way, in some cases the resulting route is the absolute minimum and in most cases it is the local minimum. More information regarding algorithms may be found in [3,6-8,24]. In Fig. 3 and Fig. 4 the reproduction process of the genetic algorithm may be observed.

4.2. Simulated Annealing (SA) Algorithm

This algorithm uses the molecular behavior of bodies as they slowly cool, reaching a molecular order that generally improves its physical properties. Fig. 5 this behavior.

In this case the body is treated as a very active gas element obeying general laws within its volume.

Fig. 6 shows a matrix that is considered as a material with its heat energy distributed by layers, with the coldest in the center and the hottest toward the ends, N represents the number of nodes of the network, m the number of elements of the population matrix and j the position of the layer in rotation.

This way, the layers will move at different speeds due to heat transfer. The costs of the routes are calculated at all times, obtaining a final route that is not necessarily the absolute minimum. More information of generic algorithms may be seen in [8,9].

4.3. Tabú Search (TS) Algorithm

The TS algorithm was developed by Dr. Fred Glover (1989). It was not until 1990 that the algorithm became popular for the approximate solution of optimization problems. The advantage of the algorithm is that once a possible solution is found it converges quickly. This convergence is because actions that stray from the local solutions are punished, and neighbors with high probabilities of having a solution are preserved. Basically it is sustained that more is learned from errors, generating information so they are not repeated. TS has established new records in searches for the best solution to problems in production planning and programming, resource assigning, network design, routing, financial analysis, telecommunications, portfolio planning, supply chain management, agent based modeling, business process design, provision, automatic learning, data mining, etc. [20,21].

Fig. 8 shows the column exchange of the population matrix. This process is registered as beneficial when the aptitude function decreases and as not beneficial when it increases and is therefore punished so it is not repeated.

Figs, 4, 7 and 9 show the flow chart of the used algorithms where the request is blocked after a number of iterations given as threshold, for computer efficiency of the process.

 

5. Comparison scenario

Once the simulation was conducted it was compared with 4 works [3] and [8] under comprehensive solution conditions and [4-5] under conditions of subdivision of the problem.

The NSFNET Network used for the test has 14 nodes and 21 optical fiber links (see Fig. 10). The parameters used were similar to those presented in [5]. Probability comparisons of blockage and network use were conducted, varying the charge in the interval [0,180] with increases of 10 Erlangs. The number of connections made during the simulation in [4,5] of this work were 108 connection requests.

 

6. Results

In the comparison of heuristics with indicators such as the blocking probability and network use, it is observed that the studied algorithms tend to improve blocking probability in high load dynamic traffic, especially over 100 Erlangs, as observed in figs. 11 and 12. However, the network use resulted higher and this is a problem for network availability. Fig. 12 shows the blocking probability (BP) and it is observed that TS has a low BP up to 120 Erlangs, outperforming the rest of the algorithms. This is mainly because TS finds LP passing through a neighborhood of solutions that is lower than the rest of the algorithms, but over 120 Erlangs, TS is not the best, determined for high loads of incoming traffic TS does not perform better than the rest of the algorithms.

It is important to mention that the studies shown were conducted with 8 wavelengths and reaching 180 Erlangs.

Fig. 12 shows the characteristics of the algorithms compared to the network usage (NU). The TS algorithm is not the best one and quickly uses many network resources.

The other algorithms have a much lower NU, which leads to the reflection on the routes obtained by the TS algorithm has many more jumps compared to the other algorithms, which consequently results in higher network usage.

Fig. 13 shoes the average values of the blocking probability to facilitate its comparison, observing that the Tabú Search (TS) heuristics performs the best.

Fig. 14 shows the average network use value, observing that the evolutionary heuristics (GA) use network resources the least. In Fig. 13 and Fig. 14, the Blocking Probability and the Network Utilization are inversely proportional; while one increases, the other decreases. That is to say, if the blocking probability improves, this is done at the cost of elevating the network utilization, and vice-versa.

 

7. Conclusions

It is established that heuristic algorithms tend to use more network resources, increasing the NU (Network Utilization) indicator, but in high load dynamic traffic scenarios their behavior is stable resulting in relatively low blocking probability. This observation leads to modifying the comprehensive strategy, to improve the NU and BP (Blocking Probability) indicators simultaneously. This new solution strategy is called Localized Integral Strategy (LIS). The results of this new strategy may be observed in future publications with a new heuristic proposal called SNAKE and GEAR, proposed by both New Technology Research Group (GINT, its acronym for its name in Spanish, Grupo de Investigación de Nuevas Tecnologías) of the Faculty of Technology of Universidad de Santiago de Chile, and Telemedicine Research Group (TIGUM, its acronym for its name in Spanish, Grupo de Investigación en Telemedicina) of the Faculty of Engineering of Universidad Militar Nueva Granada of Bogotá, Colombia.

It is established that heuristic algorithms tend to use more network resources, increasing the NU (Network Utilization) indicator, but in high load dynamic traffic scenarios their behavior is stable resulting in a relatively low BP (Blocking Probability) indicator. Both indicators have an inversely proportional behavior, i.e., if one increases, the other decreases. This observation leads to the need to modify the comprehensive strategy, to simultaneously improve the NU and BP indicators.

This new solution strategy is called Localized Integral Strategy (LIS) or Estrategia Integral Localizada (EIL). The results of this new strategy will be seen in upcoming publications, together with other heuristic proposals called Snake One, Snake Two and Snake Three.

 

Acknowledgements

Special appreciation is expressed to the DICYT Program of Universidad de Santiago de Chile - USACH (Project DICYT N° 061572RG), for its important support in research and development, and particularly to the New Technologies Research Group (GINT-DTI-USACH).

 

References

[1] Charbonneau, N. and Vokkarane, V., Tabu searach meta-heuristic for static manycast routing and wavelength assignement over wavelength-routed optical WDM networks, Proceedings of Communications (ICC), 2010 IEEE International Conference on, 2010, pp. 1-5. DOI: 10.1109/ICC.2010.5502241        [ Links ]

[2] Al-Momin, M. and Cosmas, J., The impact of content oriented routing on openflow burst switched optical networks, Proceedings of Advanced Information Networking and Applications Workshops (WAINA), 2013 27th International Conference on, 2013, pp. 965 -970. DOI: 10.1109/WAINA.2013.139        [ Links ]

[3] Rodriguez, A. y Saavedra, F., Enrutamiento y asignación de longitudes de onda en redes WDM: Solución simultánea basada en algoritmos genéticos, Proceedings of XVI Congreso Internacional de Ingeniería Eléctrica, Electrónica y Sistemas (IEEE INTERCON2009), 2009.         [ Links ]

[4] Chu, X., Li, B. and Zhang Z., A Dynamic RWA algorithm in a wavelength-routed all-optical network with wavelength converters, Proceedings of INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications. IEEE Societies, 3, pp. 1795-1804. 2003, DOI: 10.1109/INFCOM.2003.1209202        [ Links ]

[5] Zang, H. and Jue, J., Dynamic lightpath establishment in wavelength-routed WDM networks, IEEE Communications Magazine, 39(1), pp. 100-108, 2001. DOI: 10.1109/35.948897        [ Links ]

[6] Barpanda, R., Turuk, A., Sahoo, B. and Majhi, B., Genetic algorithm techniques to solve routing and wavelength assignment problem in wavelength division multiplexing all-optical network, Proceedings of Communication Systems and Networks (COMSNETS), 2011 Third International Conference on, 2011, pp. 1-8. DOI: 10.1109/COMSNETS.2011.5716507        [ Links ]

[7] Rodríguez, A. y Saavedra, F., Solución simultánea del enrutamiento y asignación de longitud de onda en redes WDM con algoritmos genéticos. Proceedings of IEEE COLCOM, pp. 91-94, 2008.         [ Links ]

[8] Rodríguez, A., Saavedra, F. y Ramirez, L., Simulated annealing, una propuesta de solución al problema RWA en redes fotónicas, Proceedings of XVIII Congreso Internacional De Ingeniería Eléctrica, Electrónica, Sistemas Y Ramas Afines (IEEE InterconUNI), 2011.         [ Links ]

[9] Guenduez, H. and Kadir, H., A well-arranged simulated annealing approach for the location-routing problem with time windows, Proceedings of System Sciences (HICSS), 2013 46th Hawaii International Conference on, pp. 1144-1153, 2013. DOI: 10.1109/HICSS.2013.69        [ Links ]

[10] Kuri, J., Puech, N., Gagnaire, M., Dotaro, E. and Douville, R., Routing and wavelength assignement of scheduled lightpath demands, IEEE Journal On Selected Areas in Communications, 21(1), pp. 1231-1240, 2003. DOI: 10.1109/JSAC.2003.816622        [ Links ]

[11] Yi-Jen, C., Tsu-Hsiu, W. and Jui-Pin, W., High-speed semiconductor all-optical conversiondevice based on field-driven quantum well, Proceedings of Advanced Infocomm Technology (ICAIT), 2013 6th International Conference on, pp. 147-148, 2013. DOI: 10.1109/ICAIT.2013.6621538        [ Links ]

[12] Bhaskaran, K., Triay, J. and Vokkarane, V., Dynamic anycast routing and wavelength assignment in WDM networks using ant colony optimization (ACO), Proceedings of Communications (ICC), 2011 IEEE International Conference on, pp. 1-6, 2011. DOI: 10.1109/icc.2011.5962826        [ Links ]

[13] Ramesh, T., Amrutha, N., Madhu, A., Saumya, K. and Vaya, P., A proactive and self-regulated ant-based RWA protocol for all-optical WDM networks, Proceedings of Process Automation, Control and Computing (PACC), 2011 International Conference on, pp. 1-5, 2011. DOI: 10.1109/PACC.2011.5978978        [ Links ]

[14] Zeng, P. and Yu, H., An ant-based routing algorithm to achieve the lifetime bound for target tracking sensor networks, Proceedings of Communications, 2006. ICC '06. IEEE International Conference on, 8, pp. 3444-3449, 2006. DOI: 10.1109/ICC.2006.255605        [ Links ]

[15] Skorin-Kapov, N., Heuristic algorithms for the routing and wavelength assignment of scheduled lightpath demands in optical networks, Selected Areas in Communications, IEEE Journal, 24(1), pp. 2-15, 2006. DOI: 10.1109/JSAC.2006.1677251        [ Links ]

[16] O'Brien, D., Chatelain, B., Gagnon, F. and Tremblay, C., A dual metaheuristic solution to the Min-RWA problem, Proceedings of Optical Fiber communication/National Fiber Optic Engineers Conference (OFC/NFOEC), pp. 1-3, 2008. DOI: 10.1109/OFC.2008.4528114        [ Links ]

[17] Dzongang, C., Galinier, P. and Pierre, S., A tabu search heuristic for the routing and wavelength assignment problem in optical networks, IEEE Communications Letters, 9(1), pp. 426-428, 2005. DOI: 10.1109/LCOMM.2005.05011        [ Links ]

[18] Khyda, D., Chamberland, S. and Pierre, S., Improvement of routing and wavelength assignment in WDM networks using tabu search, Proceedings of Electrical and Computer Engineering Canadian Conference on (IEEE CCECE), 2, pp. 765-768, 2003. DOI: 10.1109/CCECE.2003.1226007        [ Links ]

[19] Ying, W., Tee, C. and Meng, L., A tabu search algorithm for static routing and wavelength assignment problem, IEEE Communications Letters, 9(1), pp. 841-843, 2005. DOI: 10.1109/LCOMM.2005.1506721        [ Links ]

[20] Glover, F., Tabu search, Part I, ORSA Journal on Computing, 1(3), pp.190-206, 1989.         [ Links ]

[21] Glover, F., Tabu Search, Part II, ORSA Journal on Computing, 2(1), pp. 4-32. 1990.         [ Links ]

[22] Rodríguez, A., Ramírez, L., Espinoza, J. Ampuero, L. y Ramírez, C., Enrutamiento y asignación de longitud de onda: Algoritmos heurísticos bajo tráfico dinámico en redes WDM, Proceedings of XXI Congreso Internacional de Ingeniería Electrónica, Eléctrica y Computación (INTERCON2014), pp. 265-270, 2014.         [ Links ]

[23] Montoya, J., Solano, E. and Durán, C., Memetic algorithm to minimize costs of activities in RCPSP, Dyna, 79(179), pp. 86-95, 2012.         [ Links ]

[24] Navarro, R., Puris, A. y Bello, R., Desempeño de algunas meta-heurísticas en problemas continuos analizados según la posición del óptimo en el espacio de búsqueda, Dyna 80(180), pp. 60-66, 2013.         [ Links ]

[25] Rodriguez, A., Ramirez L, Rivera L. and Gutierrez A., Routing wavelength assignement: A solution with tabu search in dynamic traffic. In: Ingeniare. Rev. Chil. Ing., 22(4), pp. 495-503, 2014. DOI: 10.4067/S0718-33052014000400005        [ Links ]

 

A.B. Rodríguez-García, Received a BSC. degree in Mechanical-Electrical Engineering in 2000, a MSc. degree in Telecommunications in 2003, and a PhD. in Engineering Sciences in 2007, the first of the Universidad Nacional de Ingeniería, Lima, Peru and the rest of the Universidad de Santiago de Chile, Santiago, Chile. From 2000 to 2003, he worked as an academic at several state universities in Peru and Chile, from 2004 he has worked at Universidad de Santiago de Chile as a researcher in the area of telecommunications, specializing in fiber optic networks. Academic and research group director of new technologies at the Faculty of Technology of Universidad de Santiago de Chile. His research interests include simulation modeling photonic network devices; luminous routing heuristics and optimization of optical networks using metaheuristics. ORCID: 0000-0002-8383-6561

L.J. Ramírez-López, Received his BSC. degree in Electronic Engineering from University Antonio Nariño in 1997. In 2002, he received the Electronic Instrumentation Specialist award. In 2006 he obtained a MSc. degree in Engineering Systems at the National University of Colombia. PhD of Mogi das Cruzes of Sao Paulo, Brazil. Director of Telemedicine Research Group of New Granada Military University, is co-investigator of the Research Group on Communications and Security Informatics, Faculty of Engineering, Engineering program in Telecommunications of Military University Nueva Granada. Bogotá, Colombia. ORCID: 0000-0002-6473-5685

J.C. Espinoza-Oyarzún, Received of State Professor of Chemistry, Natural Sciences Merceologia in 1971 from Universidad Tecnica del Estado (UTE). MSc. in Education, Curriculum and Evaluation mention 2008 from Universidad de Santiago de Chile (UTE). Specialization Diploma in Plastics in 1980 at Instituto de Ciencia y Tecnología de Polímeros, Madrid, Spain. Diploma in Innovation and Technology in the Context of Strategic Management in 1998 from Universidad de Santiago de Chile and Instituto Tecnologico de Monterrey, Mexico. Deputy Dean of the Faculty Teaching Technology, 2010 at Universidad de Chile. ORCID: 0000-0003-2572-338X

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License