AIRCC PUBLISHING CORPORATION
A Markovian Model for Internet of Things Application
Osama Salameh and Mohammed Awadand Fadi AbuAlrub
Department of Computer Systems Engineering, Arab American University, Palestine
Internet of Things (IoT) allows communication among human-to-things, things-to-human, and things-to-things that are incorporated into an information networks allowing automatic information interchange and the processing of data at real time. In this paper, we conduct a performance analysis of a real application defined through four traffic classes with the priorities present in smart cities using Continuous Time Markov Chains(CTMC). Based on a finite capacity queuing system, we propose a new cost-effective analytical model with a push-out management scheme in favor of the highest priority (emergency) traffic. Based on the analytical model, several performance measures for different traffic classes have been studiedextensively including blocking probability; push out probability, delay, channel utilization as well as overall system performance.
Performance analysis, Markov chain, IoT
The purpose of the Internet of Things is to create a common infrastructure to enable objects to communicate with each other at anytime and anywhere [1, 2, 3]. Internet of things makes life smarter by adding intelligent capabilities without the total dependence on human participation. A number of applications are being developed and deployed in different industries including smart cities, food supply chain, environmental monitoring, health care services, surveillance, agriculture, and others. IoT seeks to achieve three main objectives. These objectives are more comprehensive interconnection, more intensive information perception, and more comprehensive intelligent service .
Various devices used in IoT are connected to different types of networks such as 3G networks, RFID, Wi-Fi, GPRS or GSM. This has resulted in a massive influx of heterogeneous traffic towards IoT systems that pose a challenge to buffer and service management [5, 6]. Other challenges are the complexity to represent such heterogeneous entities and the absence of procedures to ensure the Quality of Service (QoS) within IoT .
The devices used in IoT mostly have limited processing capabilities and cannot accommodate spectrum management solutions used in Cognitive Radio Networks . Furthermore, such devices are prepared with tiny buffers which must deal with IoT services that engender a massive quantity of data. Buffer management is a substantial mechanism for providing QoS control techniques, which controls the allocation of buffer resources between diverse fluxes per specific policies. An efficient buffer management system with an appropriate scheduling mechanism is, therefore, necessary to ensure immediate connectivity and meet the QoS requirement . These specifications are usually determined by performance measures including queuing delay and packet loss . QoS is one of the most substantial metrics to verify the goodness and efficiency of IoT services. It is, therefore, needful to layout a network that can fit dynamically to the varying wants of QoS in IoT systems . A review of various QoS schemas, applications and structural designs for different quality of service parameters of IoT is presented in .
The key to analyze IoT performance is to understand the nature of the traffic involved in these systems. This is important in order to be able to construct an efficient model to accurately evaluate network performance and meet the QoS requirements. In this paper, our main impartial is to investigate IoT Performance depending on the elaborated traffic model by probabilistic methodology taking in to account the QoS requirements. Our work is motivated by the research in [8, 12] where the authors provide a realistic traffic model for an IoT system. This traffic model consists of four traffic classes as follows:
In this paper, we propose a new analytical model by considering the four traffic classes described above. Packets share a single queue with finite capacity under a push out buffer management scheme that assuresthe proper level of QoS. Such scheme reflects the heterogeneity of the IoT devices in terms of services offered and communication requirements. The analytical model can be used to assess the performance of the intelligent gateway under different traffic circumstances to meet the QoS limitations.
The remainder of the paper is structured as follows. Section II presents related work. In Section III, we discuss the system model and model description followed by performance measures in Section IV. Section V explains the experimental classification results and analysis. In Section VI, we conclude.
2. Related Works
The IoT is a relatively new research topic and a small number of publications are devoted to performance analysis of these systems. We review some of the next. Markov chain analysis is conducted in [9, 13, 14, 15]. In , the authors consider a finite-capacity queue with two traffic classes; normal and emergency. The emergency traffic has pre-emptive priority over normal traffic. A push-out mechanism is utilized where arrival of an emergency packet pushes out a normal packet from the buffer if the buffer is full. Basic performance measures are obtained including queue length and blocking probability for each traffic class. In , the performance of a finite capacity slot- based IoT node with three traffic classes is analyzed. The traffic classes include high, medium and low priority classes. In each slot, the scheduler allocates bandwidth to each traffic class using a round-robin policy dynamically through a prediction based approach. This study does not consider blocking and push out probabilities. In , the authors investigate the performance of haphazard access narrow-band Internet of Things. The system throughput is extensively analyzed. In  several analytical models of prioritized contention access and CSMA/CA channel access protocols for IoT applications are presented. The authors investigate the reliability and power consumption of a node and the delay for successful packet transmission.
Simulations based studies are conducted in [16, 17, 18]. In , hybrid scheduling is proposed to accommodate QoS constraints of heterogeneous traffics of IoT. Traffics with preemptive and non-preemptive priorities are considered. The analysis is conducted using the NS-2 simulator and concentrates only on queue length for different traffics. Two traffic scenarios are considered in . In this work, the factors of the performance of an IoT network are analyzed. Three traffic classes with priorities are considered in . An efficient packet scheduler is proposed and the average packet drop ratio and average jitter for all traffic classes are analyzed.
Finite buffer queues are investigated using the generating function approach in [19, 20, 21]. In , the authors study a single server Markovian system with two classes of customers. Customers of class 2 have non-preemptive precedence over customers of class 1. The mean queue length for each class of customers is calculated. In , a non-preemptive priority queue with a push-out buffer management mechanism is studied and packet loss probabilities are obtained. A preemptive queue with 2 customer classes and the randomized push-out mechanism is analyzed in . In this work, the packet loss probability and average relative waiting times are thoroughly investigated.
In our work, we analyze a queuing system with a realistic traffic model reported in [8, 12]. Four classes of traffic with pre-emptive and non-pre-emptive priorities are considered. Furthermore, a push-out mechanism is employed where a customer of a higher class pushes out a lower priority customer if the buffer is full. To the best of our knowledge, a rigorous analysis of this model has been rarely seen in the literature.
3. System Model
This paper proposes Markov-Chain based model to investigate the performance of a single server queueing system with four priority classes described in section 1.A finite capacity buffer with a complete buffer sharing scheme by all classes of traffic is considered (See Figure. 1). The model parameters are summarized as follows: Let,
Based on these assumptions and since the buffer is not time slotted, we use Continuous Time Markov Chain in our analysis.
Figure 1. Queueing model
Table 1: Transition rates between states
Let system state be represented by x = (n1, n2, n3, n4, c) where n1, n2, n3, n4are the number of class 1, class 2, class 3, class 4 packets in the system (including the packet in transmission) correspondingly and c = 0, 1, 2, 3, 4 is the class of the packets in transmission and 0 if the system is empty. It can be easily seen that the state transition process is a Markov chain where the next state is determined only by the current state.State space S contains all the states such that ≤ Nand satisfying the conditions C
where the first case ensures that a packet of class I cannot be in transmission if it is not in the system and the second case states that no class 1 or 3 packets can be in transmission if there are packets of class 4 in the system. This is explained by the preemptive priority of class 4 packets over the packets of classes 1, 3. The transition rates between states are presented in table 1.
Next, we describe the transitions between states of the proposed CTMC model. Within this model, seven transition cases are distinguished (seetable 1). An arriving packet from any class will get immediately transmitted when the system is empty (case 1). In case 2, an arriving packet of classes 1,2,3 will join the queue if the system is not empty and space is available in the buffer. An arriving packet of classes 1, 2 or 3 is lost if the system is full. An arriving packet of class 4 will join the queue if the packet in transmission belongs to either class 2 or class 4 and the system is not full (case 3). In case 4, an arriving packet of class 4 preempts the packet in transmission if the packet belongs to class 1 or 3. In this case, the interrupted packet re-joins the queue if a space in the buffer is available. In cases 5 and 6, an arriving packet of class 4 pushes out a packet of lower priority when the system is full. The pushed out packet is lost. The packet of the lowest priority is pushed out of the buffer (case 5). In this case, the arriving packet preempts the packet in transmission if the packet in transmission belongs to class 1 or class 3. The system is blocked if the buffer is fully occupied by packets of class 4. When a packet of class 2 is in transmission and the buffer is full, an arriving packet of class 4 joins the queue and pushes out a packet of the lowest priority waiting in the buffer (case 6). When a packet finishes transmission, the packet of the highest priority waiting the buffer will start transmission next (case 7) and if there are no more packets in the queue, c is set to 0.
Let S be the set of all states of the Continuous-Time Markov Chain described above and Q is the infinitesimal generator matrix. Then vector π with steady-state probabilities of the Continuous-Time Markov chain is obtained as the solution of a set of balance equations represented by πQ = 0 using the normalization condition where πx represents the probability for the system to be in state x.
4. Performance Measures
We are interested in obtaining several performance measures. For each class, we calculate the average number of packets in the system, the blocking probability, and utilization. These measures are typical when analyzing a queuing system with finite buffer capacity. We also calculate the push out the probability for packets of classes 1, 2 and 3. Furthermore, we define a function Z to measure the overall system performance.
The average number of the packets of class I, Ni, can be calculated by
The blocking probability is the probability that an incoming packet discovers the buffer full and lost. It is important to note that packets of classes i = 1, 2, 3 views the system as blocked differently from packets of class i = 4. Let SN denote the set of states where . The system is blocked for packets of classes i = 1, 2, 3 if the system is in one of the states SN whereas it is blocked for packets of class i = 4 only if the system is in one of two states SN,4= (x1, x2). The states x1 = (0, 1, 0, N − 1, 2), x2 = (0, 0, 0, N, 4) denote the cases when the buffer is fully occupied by packets of class 4 and a packet of class 2 or class 4 are in transmission correspondingly. Hence, the blocking probability for class I, γi,is the same for packets of the first three classes and can be obtained by
and the blocking probability for packets of class 4, γ4, is
Applying little’s law, the average delay of packets of class i is then calculated as
The push out probability is the probability that a packet that is waiting in the buffer or in transmission is pushed out and lost upon the arrival of a class 4 packet when the buffer is full. The push out probability αi is applicable for packets of classes i = 1, 2, 3 and is calculated as follows
Where SN,I is a subset of SN − SN,4. Namely, SN,1 is the subset of SN − SN,4 with n1> 0. Likewise, SN,2, SN,3 are subsets of SN − SN,4 with n1 = 0, n2> 0 and n1 = n2 = 0, n3> 0 respectively. µc is the transmission rate of the class of the packet currently occupying the channel. The overall push out probability α is then equaled α1 + α2 + α3. We are also interested in the utilization of packets of class I, Ui . This measure is obtained by
where Si is the set of all states where the class of the packet in a transmission is i. The design goal is to reach a little push outthe probability of packets, decrease the blocking probability and ameliorate the utilization of our system. We define a Grade of Service (GoS) function as
where parameter β indicates a penalty weight for pushing out the probability of packets over blocking probability of packets. This penalty seems justified as push out implementation is complex[22,23]. The system will have to keep track of all the packets in the buffer in order to be able to push out the right one when needed.
We define the performance of the system and a cost function of system operation 
As can be seen, our objectives are to raise the performance of the system by decreasing the GoS function and to reduce the cost of the system by increasing the utilization of the system. In order to measure the overall system performance, we define a function Z by combining the equations (8),(9) .
The performance measures defined above allow understanding system behavior under specific input parameter including buffer size needed to ensure QoS specifications. Also, the input parameters values can be calibrated to maximize the overall system performance function Z as will be discussed below.
5. Numerical Results
Let the transmission rates (in milliseconds) be 0.1,100,10,100 for packets of classes 1- 4 respectively. The transmission rate for packets of classes 2 and 4 are the same. This assumption seems logical to justify why the transmission of packets of class 2 is not interrupted upon the arrival of a packet of class 4. The transmission rate of packets of class 3 µ3 and packets of class 1 µ1 are 10 times slower and 1000 times slower than packets of class 4 respectively. The system capacity N =10 packets. The values of arrivals rates (in milliseconds) are as follows: λ1 = 5, λ2 = 10, λ3 = 7. The values of these parameters ensure that the system is heavily loaded.
Figure 2. Utilization of the channel Ui, i = 1, 2, 3, 4 versus λ4 for N = 10
In Figure 2, we show the utilizationof the channel by packets of traffic classes 1, 2, 3 and 4 as a function of λ4. When λ4 is very small, the channel is primarily occupied by packets of class 1 due to their larger size and to the fact that traffic class 2 and 3 have non-preemptive priority over packets of class 1. Increasing λ4, the utilization of the channel by packets of class 1 sharply decreases as they get preempted by packets of class 4 while having the lowest priority of all classes. The utilization of packets of class 3 can be split into 2 parts. In the first part, increasing λ4 the utilization of channel by packets of class 3 increases to a certain point as there are more chances to packets of class 3 to utilize the channel after the preemption of the larger packets of class 1. In the second part and while increasing λ4 further, the utilization of the channel by packets of class 3 decreases as the channel is more occupied by packets of class 4. Similar behavior can be noticed for the utilization of channel by packets of class 2. The peak point for the curve of packets of class 2 is smaller than the curve of class 3 because µ2> µ3. Increasing λ4, the utilization of the channel by packets of class 4 increases almost linearly since they are not influenced by packets of classes 1 and 3 and there is the minimal influence of small packets of class 2.
Figure 3. Average number of packets of traffic classes Ni, i = 1, 2, 3, 4 versus arrival rate λ4
Figure 3 demonstrates the effect of increasing λ4 on an average number of packets of classes 1, 2, 3 and 4 for the same parameter set of Figure 2. As expected the behavior of Ni, i = 1,2,3,4 in Figure 3 is similar to the corresponding utilization Ui of the channel in Figure 2. For small values of λ4, we notice that N1 is highest due to the fact that these packets have the lowest priority and the channel utilization is high. Increasing λ4further, N1 sharply decreases as these packets are pushed out first. This creates more space for a packet of class 2 and 3 to join the queue, thus the average number of packets of class 2 (N2) and class 3 (N3) increase. Further increase in λ4pushes out packets of classes 2 and 3 and the system is primarily occupied by packets of class 4. Also, we notice that the peak point for class 2 comes earlier than the peak point for class 3 as packets of class 2 are pushed out before packets of class 3. For λ4>150, the system is almost completely occupied by packets of class 4.
Figure 4 shows the blocking probability of packets of classes 1 as a function of λ4. For this parameter set and when λ4 is very small, the buffer is highly occupied and the blocking probability is high too. Increasing λ4 pushes out packets of class 1 first that occupy the channel longer time. The channel becomes busy with packets with a high transmission rate and as a result, there is more space in the buffer. This explains why the blocking probability decreases. Increasing λ4 further, blocking probability starts to increase because the buffer is more occupied by packets of class 4. The blocking probability for packets of classes 2 and 3 is the same for packets of class 1 above.
Figure 5. Average Delay of class 4 packets versus λ4 for various values of µ2 and N = 10.
Figure 5 shows the average delay of packets of class 4 as a function of λ4 for different values of transmission rate µ2. It can be seen that increasing λ4 increases the number of packets of class 4 and the delay increases. For small values of λ4 and µ2 = 10, the average delay of packets of class 4 increases sharply because of the larger utilization of the channel by packets of class 2. Increasing λ4 further, this effect decreases since the priority of packets of class 4 is higher than class 2 and packets of class 2 have less chance to occupy the channel. Increasing µ2, and small values of λ4, we notice that the delay of packets of class 4 decreases as packets of class 2 leave the channel faster. For values of λ4>50, µ2 has a small effect on the delay of packets of class 4.
Figure 6. Overall Push out probability α versus λ4 for N = 10.
Figure 6 shows the overall push out probability α of packets of classes 1, 2, 3 as a function of λ4. The overall push out probability starts high due to the fact the buffer is highly occupied with packets of class 1 and these packets are pushed out first. Increasing λ4, the overall push out probability falls sharply as the overall number of packets of classes 1, 2 and 3 decreases. For λ4>30, α decreases slowly. This is explained by the fact that packets of classes 2 and 3 are served more quickly than packets of class 1 decreasing the queue length. Also, for high values of λ4, the system becomes occupied primarily with packets of class 4 and there is a fewer number of class 1,2 and 3 to push out.
Figure 7. Performance/Cost Proportion (Z) versus λ4 for β = 10.
Figure 7 shows the performance/cost Proportion (Z) as a function of λ4. This Figure presents the case when the cost function is minimum i.e. the utilization of the channel is close to 1. It can be seen that the value of the function Z can be maximized for a certain value of λ4. This figure can be split into two parts. In the first part, increasing λ4, the value of Z increases. This happens because in this case both the blocking probability and the push outthe probability for the first three classes of traffic decrease. In the second part, increasing λ4, the value of Z decreases. In this case and while the value of the push outthe probability for the first three classes decreases further, the value of blocking probability for the first three classes starts to increase as the buffer becomes more occupied by class 4 packets. Also and throughout both parts, it is evident that increasing λ4 increases the blocking probability for packets of class 4. This behavior seems to persist for smaller arrival rates of λ1, λ2, and λ3 and for other values of β between 1 and 10.
We have presented an analytical model to evaluate a real application present in IoT networks. Detailed analysis is conducted and several performance measurements have been investigated. The outcomes show the impact of the arrival rate of packets of class 4 on the performance measures. The analysis clearly shows that the overall performance of the system Z can be maximized for certain values of λ4. The suggested model can be used to assess the performance measures of intelligent devices to meet numerous QoS constraints under different input parameterization.
 Andrea Zanella, Nicola Bui, Angelo Castellani, Lorenzo Vangelista, Michele Zorzi, (2014) “Internet of Things for Smart Cities”, the final version of this manuscript will appear in the IEEE Internet Of Things Journal, vol. 1, no. 1, DOI: 10.1109/JIOT.2014.2306328.
 Jayavardhana Gubbi, Rajkumar Buyya, Slaven Marusic, Marimuthu Palaniswami, ( 2013) “Internet of Things (IoT): A Vision, Architectural Elements, and Future Directions” ,Future generation computer systems, https://doi.org/10.1016/j.future.2013.01.010
 Ebraheim Alsaadi, Abdallah Tubaishat, (2015) “Internet of Things: Features, Challenges, and Vulnerabilities”, International Journal of Advanced Computer Science and Information Technology (IJACSIT), Vol. 4, No. 1, Page: 1-13, ISSN: 2296-1739 c Helvetic Editions LTD, Switzerland http://www.elvedit.com, https://doi.org/10.1109/iscc.2015.7405513
 Hua-Dong Ma, (2011) “Internet of things: Objectives and scientific challenges”, Journal of computer science and Technology, vol. 26, issue 6, pp 919-924.
 Prajakta Pande, Anand R. Padwalkar, (2014) “Internet of Things –A Future of Internet: A Survey”, International Journal of Advance Research in Computer Science and Management Studies, Volume 2, Issue 2, ISSN: 2321-7782 (Online)
 Leah Rosenbaum, Mohit Agrawal, Leah Birch, and Yacoub Kureh, (2011) “Calculating Call Blocking, Preemption Probabilities and Bandwidth Utilization for Satellite Communication Systems”, Technical report.
 Bruno Costa, Paulo F. Pires, Flávia C. Delicato, Wei Li ; Albert Y. Zomay, (2016) “Design and Analysis of IoT Applications: A Model-Driven Approach”, IEEE 14th Intl Conf on Dependable, Autonomic and Secure Computing,Auckland, New Zealand.
 Subha P Eswaran, Jyotsna Bapat,(2015) “Service Centric Markov based Spectrum Sharing for Internet of Things (IoT)”, IEEE Region 10 Symposium, https://doi.org/10.1109/tensymp.2015.24
 Irfan Awan, Muhammad Younas, Wajia Naveed,(2014) “Modelling QoS in IoT Applications”, International Conference on Network-Based Information Systems
 Sakshi Kausha, R.K Sharma,(2010) “Modeling and Analysis of Adaptive Buffer Sharing Scheme for Consecutive Packet Loss Reduction in Broadband Networks”, International Journal of Electrical and Electronics Engineering
 Ravi C Bhaddurgatte and Vijaya Kumar BP, SMIEEE,(2015) “A Review: QoS Architecture and Implementations in IoT Environment”, Research & Reviews: Journal of Engineering and Technology, ISSN:2319-9873
 Subha P Eswaran, Ariharan V, Jyotsna Bapat,(2014) “Event Driven Opportunistic Communication Enabler for Smart City”, 14 Eighth International Conference on Next Generation Mobile Applications, Services,andTechnology, https://doi.org/10.1109/ngmast.2014.41
 Reema Sharma , Navin Kumar, Namratha B Gowda , T. Srinivas,(2015) “Probabilistic Prediction based Scheduling for Delay Sensitive Traffic in Internet of Things”, The 6th International Conference on Ambient Systems, Networks and Technologies (ANT 2015), Procedia Computer Science 52 ( 2015 ) 90 – 97, https://doi.org/10.1016/j.procs.2015.05.032
 Yuyi Sun, Fei Tong, Zhikun Zhang and Shibo He, (2017) “Throughput modeling and Analysis of Random Access in Narrowband Interner of Things”,IEEE Internet of Things Journal.
 M.P.R.S Kiran, P.Rajalakshmi, (2018) “Performance Analysis of CSMA/CA and PCA Time critical Industrial IoT Applications”, IEEE Transactions on Industrial Informatics.
 Wen-Xiang Li, Jun Xu, Hao Jiang, (2012) “Queuing States Analysis on a Hybrid Scheduling Strategies for Heterogeneous Traffics in IOT”, International Conference on Computer Science and Service Systems, Nanjing, China.
 Sriram Sankaran, (2016) “Modeling the performance of IoT networks”, IEEE International Conference on Advanced Networks and Telecommunications Systems (ANTS), Bangalore, India.
 Reema Sharma, Navin Kumar, Namratha B Gowda, T. Srinivas, (2018) “Packet Scheduling scheme yo guarantee QoS in Internet of Things”, Wireless Pers Commun.
 Padam Singh Tomar, (2011) “FINITE MARKOVIAN QUEUE WITH SERVICE PRIORITIES”, Indian Journal of Mathematics and Mathematical Sciences, Vol. 7, No. 2, Pages: 135-143.
 Konstantin E. Avrachenkov, Nikita O. Vilchevsky, Georgy L. Shevlyakov,(2003) “Priority Queueing with Finite Buffer Size and Randomized Push-Out Mechanism”, ACM Sigmetrics Performance Evaluation Review.
 Vladimir Muliukha, Alexander Ilyshenko, Oleg Zayats, Vladimir Zaborovsky, (2015) “Preemptive queueing system with randomized push-out mechanism”, Communications in Nonlinear Science and Numerical Simulation, Volume 21, Issues 1–3,Pages 147-158.
 D.Hong,T Suda, ‘Congestion control and prevention in ATM networks’ , IEEE networks, volume 5, issue 4, Pages:10-16,1991.
 Pavel Chuprikov, Sergey Nikolenko, Kirill Kogan, ‘Priority queueing with multiple packet characterization’, 2015 IEEE Conference on Computer Communication (INFOCOM), Kowloon, Hong Kong, April 2015.
 Idil Candan, Mohammed Salameh. ‘Analytical modeling of a time-threshold based bandwidth allocation scheme for cellular networks’, Computer Communication,volume 30, issue 5 March 2007, Pages 1036-1043.
Osama Salameh , was born in Schongau, Germany in 1967. He received his M.Sc.degree and a Ph.D. degree in Computer Engineering from Odessa State Polytechnic University, Ukraine in 1990 and 1996 respectively. During his career, he was employed by several universities in Palestine and Jordan. He is a member of SMACS research group at Ghent University anda full-time associate professor at the Arab American University. His main research interests include queuing models and performance evaluation of computer and telecommunication networks.
Mohammed Awad , received the B.S. Degree in Automation Engineering from Palestine Polytechnic University in the year 2000, master & Ph.D. degrees in Computer Engineering from the Granada University Spain (both are Scholarship from Spanish Government). From 2005 to 2006, he was a contract Researcher at Granada University in the research group Computer Engineering: Perspectives and Applications. Since Feb. 2006, he has been an Assistant Professor in the Computer Engineering Department, College of Engineering and Information Technology at Arab American University. At 2010 he has been an Associate Professor in Computer Engineering. At 2016 he has been a Full Professor in Computer Engineering. He worked for more than 12 years at the Arab American University in academic Position, in parallel with various Academic administrative positions (Departments Chairman and Dean Assistant, Dean of Scientific Research and Editor-In-Chief, Journal of AAUJ). Through the research and educational experience, he has developed a strong research record. His research interests include Artificial Intelligence, Neural Networks, Function Approximation of Structure and Complex Systems, Clustering, Algorithms, Optimization Algorithms, and Time series Prediction. He won a number of awards and research grants.
Fadi K M AbuAlrub received his BS in telecommunication technology from Arab American University in Palestine, Ramallah, in 2006. He is currently working with the State Audit and Administrative Control Bureau as a software engineer and IT auditor since 2008, and currently pursuing his Master of Computer Science from Arab American University, Jenin, Palestine. His researches interest includes computer networking, information security, artificial intelligence, RFID technology, and data mining.