• 沒有找到結果。

CHAPTER 5 Research Method

5.2 Method Applied in the Research

5.2.3 Foresight-SeeFuND Task Assignment Algorithm

The Incubation Period Phenomenon happens when the load balancer assigns an amount of users to the same CM with the shortest expected waiting time in a short time.

In order to avoid the bursty traffic as time goes, the task assignment policy which can solve the incubation period phenomenon fundamentally named Foresight-SeeFuND (F-Foresight-SeeFuND) Algorithm is designed as follows:

1. CM with the highest number of user connections is ruled out to downsize the probability of facing the occurrence of bursty traffic as time ticks down.

2. Within the rest of CMs, CM with the shortest 𝑊𝑛𝑒𝑤𝑘 is selected by load balancer to connect to incoming user.

Both M/G/1 queuing model and method of moving average are incorporated in the task assignment policy to tackle the problem of network instability. If there is a huge amount of users using the service, a considerable amount of messages is predicted to flow in and cut in in a short time. 𝑞𝑐𝑢𝑡_𝑖𝑛𝑘 is added, therefore, as a way of predicting waiting time much accurately. The moment the stock market opens or when crucial information is disseminated, a huge amount of users would enter the service, meaning the system would be abundant in numerous users immediately. In the face of this situation, before selecting the CM with the shortest 𝑊𝑛𝑒𝑤𝑘 , CM with the highest number of user connections is eliminated to avoid a huge amount of messages flowing in instantly.

Not only does the algorithm in this study solve the problem of load balance, but the solution to the problems of bursty traffic and network instability is put forward in consideration of environment of mobile financial service. Next, empirical test will be displayed to validate the correctness and feasibility of the algorithm.

34

CHAPTER 6

Simulation and Emulation

6.1 Simulation Environment Setup

Task assignment policy is evaluated in the emulation. The emulator is built by Python. In Figure 20, multiple environments of emulation are executed at the same time where each set of environment has load balancer with different task assignment policy. User request is multicast to each emulated environment simultaneously. Also, on the purpose of comparing performance of system when different task assignment policies are assigned under the same user request and network environment, Network Delay Generator produces network delay of each message on condition that there is the same autocorrelation coefficient. Each host runs on Ubuntu12.04 Linux Server with 8GB Ram, 3 Core Processor, and 20GB Disk.

Figure 20. Architecture of Experiment

35

6.1.1 Response Time with Different Network Correlation

As Figure 21, in each emulation environment, 5 Connection Manager are deployed to handle the client connections. 10,000 user robots are set to create connections by log in, to be off-line by log out, and to interact with each other through chatting, in simulation.

Every users’ requests follow a Poisson process with an arrival rate of λ= 0.05 (message/second), and each experiment takes 30 minutes. Thereby, performance of system with different task assignment policies is observed through variation of Network Delay Autocorrelation ranging from the small to the large. Parameter c in the figure below means the scope of autocorrelation which we have defined in Figure 7. For example, c =100, denote as C100, means there is no correlation with the front network delay when the interval time between the two messages is more than 100 seconds.

As regards to response time with network correlation, it is found that M/M/1 is far higher than other algorithms. Besides, M/M/1 is memoryless, which makes network delay inaccurate in high variety. The main reason why there is a substantial increase of mean response time is the result of Incubation Period Phenomenon. CM queue with the shortest mean response time evaluated by M/M/1 queuing model is set to have a connection with user by Load Balancer. A system with a large inflow of users in a short time does not mean a huge amount of inflow of messages. Nothing unusual then would be detected and mean response time of message remains unchanged. As a result, all the inflowing users are assigned to the same CM queue to establish connection. After a period of time, users on the CM begin to exchange information with one another. This brings a huge amount of instant messages, and queue length of CM grows abruptly.

Message would not stop increasing except that all the users are off-line and cutting connection. Despite so, congestion caused by the lengthy queue length could not be dealt with, leading to the long mean response time overall. Meanwhile, CM queue with

36

the shortest mean response time begin to connect to user by Load Balancer. Under the circumstances, it is possible that a huge amount of users would flow into CM queue again. Vicious circle like this indicates M/M/1 is not an efficient algorithm for this concern.

Figure 21. Response Time with Different Network Delay Autocorrelation (a) Among algorithms except M/M/1 as shown in Figure 22, SQF is the largest one under any circumstances. The reason behind this result is SQF ignores incubation period phenomenon but considers the current benefit since it always allocates user connection to the queue with the shortest connection manager. In the present, the shortest queue length would receive a huge amount of instant users out of bursty traffic of users in the incubation period. When these users receive messages together, queue length increases drastically and immediately. Therefore, average response time is prolonged because of congestion caused by the lengthy queue length which is full of messages. As autocorrelation increases, the continuous congestion gets more serious.

0

Response Time w ith Netw ork Correlation

SeeFuND F-SeeFuND SQF LUF Random RR M/M/1

37

Why SQF is a better algorithm than M/M/1 relies on the growth of queue length, which can be detected earlier than the growth of mean response time.

In this study, SeeFuND, modified from M/G/1 queuing model, predicts the congestion in the future by using historical data in the short term. By the time autocorrelation gets higher, since the continuous congestion is getting more serious, SeeFuND can predict the result in a more accurate way and get a relatively lower mean response time. When autocorrelation gets lower, the result is much less precise and the response time can even be higher than Diversification of Risk Based Schemes and LCF.

On the other hand, considering that the amount of messages flowing in and cutting in in the future is predicted based on the current amount of users, for SeeFuND, the impact from incubation period phenomenon is smaller in comparison with M/M/1 and SQF.

F-SeeFuND is derived from the modified SeeFuND. Comparing with SeeFuND, a huge amount of users is initially avoided to gather at the same CM queue in F- SeeFuND, which essentially keeps away from incubation period phenomenon. Not only continuous congestion but bursty traffic of user is avoided by predicting the future based on historical data. Thereby, as autocorrelation is getting higher, F-SeeFuND outperforms other algorithms significantly.

Because algorithms inclusive of RR, Random, and LCF manage the risk of congestion by average allocation to connection manager, their impact from incubation period phenomenon is smaller than M/M/1 and SQF. When autocorrelation remains relatively low, these algorithms perform nearly as well as F-SeeFuND, but they happen to increase response time when continuous congestion cannot be avoided in the condition that autocorrelation gets higher.

38

Figure 22. Response Time with Different Network Delay Autocorrelation (b)

6.1.2 Response Time with Different Loading

In Figure 23, performance of task assignment policies with different loadings is compared when network delay autocorrelation remains in a lower level. Obviously, response time of SQF is higher than other algorithms of task assignment because it cannot avoid incubation period phenomenon. In particular, impact from incubation period phenomenon becomes more drastic as the quantity of users increases.

While quantity of users is in a lower level, resources of systems are able to sustain, making the performances of most algorithms remain close. However, as loading keeps

0

Response Time w ith Netw ork Correlation

SeeFuND F-SeeFuND SQF LUF Random RR

39

weighting, average response time of system keeps on accumulating and increasing because of uneven allocation in the overloading which leads to the continuous congestion in the system.

SeeFuND reaches the highest average response time in the condition of the high loading because its prediction is not precise with low autocorrelation plus impact from incubation period phenomenon. For F-SeeFuND, though its prediction is not as precise as SeeFuND when facing the high loading, it outperforms those algorithms lacking consideration of incubation period phenomenon by successfully avoiding incubation period phenomenon.

Figure 23. Response Time with Different Loading (C100)

0 5 10 15 20 25

5 0 0 0 U S E R S 7 5 0 0 U S E R S 1 0 0 0 0 U S E R S 1 2 5 0 0 U S E R S 1 5 0 0 0 U S E R S

R es po ns e T im e (Seco nd)

Loading (Number of Users)

Response Time w ith Different Loading(C100)

SeeFuND F-SeeFuND SQF LUF Random RR

40

The Figure 24 shows performance of task assignment policies with different loadings under a circumstance that network delay autocorrelation remains high. In comparison with the figure above, it is clearly found that the performance of SeeFuND is much better than in the lower network delay autocorrelation. In fact, this proves that the benefit of prediction and avoidance of continuous congestion are attainable by adopting the algorithm with prediction over future congestion based on application of historical data collected in the short term and current quantity of users. At the same time, mean response time is proved to decrease because of adjustments of incubation period phenomenon according to the result that F-SeeFuND performs better than SeeFuND in the condition of high loading.

Figure 24. Response Time with Different Loading (C300)

0

41

6.1.3 Response Time with Bursty Traffic

In bursty traffic state, we simulate the stock market opening or disclosure of highly important financial message when financial agents would broadcast many messages to all their customers. In the experiment, there is a five-minute bursty traffic every five minutes, as shown in Figure 25.

Figure 25. Bursty Traffic Simulation Scenarios

Figure 26 shows the response time of different task assignment algorithm in different intensities of bursty traffic. The non-bursty traffic state means that the arrival of messages to each queue follows a Poisson process. The arrival rate of low intensity bursty traffic is 40 messages/sec per queue, and the arrival rate of high intensity bursty traffic is 150 messages/sec per queue.

We found that when the intensity of bursty traffic increases from 40

messages/sec per queue to 150 messages/sec per queue, SeeFuND algorithm has the minimum increasing response time.

Figure 26. The Response Time of Different Task Assignment Algorithm in Different Intensities of Bursty Traffic

42

In Figure 27, we observe the time series of response time for each CM queue which its bursty traffic is 40 messages/sec per queue. The result obviously shows that when bursty traffic happened, SeeFuND algorithm and F-SeeFuND can avoid the continuous congestion.

Figure 27. Time Series of Response Time for Each Cm Queue of Different Task Assignment Algorithm

43

6.2 Emulation Environment Setup

In order to observe easily in the above experiments, network delay autocorrelation model is used as a way of simulating network delay with characteristics of real network for a huge amount of users. Next, network delay autocorrelation model is replaced with the real network so that performances among different algorithms in face of the real network can be compared and evaluated.

Through the service of IaaS provided by DigitalOcean [38], user robots are deployed evenly in different datacenter region among several countries, as shown in Figure 28. Each host is run on Ubuntu14.04 Linux Server with 1GB Ram, 1 Core Processor, and 30GB Disk. Other factors in the emulating environment are the same as before.

Figure 28. Architecture of Experiment that User Robots are Deployed in Different Datacenter Region among Several Countries

44

6.2.1 Effectiveness Evaluation

In the experiment of the real network environment, quantity of users is added up incrementally in order to observe performances of system with different algorithms.

In Figure 29, the result of the experiment is in accordance with the experiment applying network delay correlation model as a way of generating network delay. Still, as far as SQF is concerned, mean response time gets raised by the growth of users on account of existence of incubation period phenomenon. Mean response time of system derived from most of the algorithms shows no significant difference when quantity of users remains in a low level. As quantity of users keeps growing, however, loading of system becomes heavier and as a result, mean response time of system gets higher when RR, Random, and LCF get stuck in the continuous congestion. While future congestion is predicted through historical data in SeeFuND, bursty traffic produced by incubation period phenomenon becomes more drastic as quantity of users grows, and it eventually increases mean response time. Meanwhile, F-SeeFuND is actually recognized to have a lower mean response time in the face of bursty traffic and continuous congestion in network. To sum up, this experiment meets the assumption that future congestion can be predicted through historical information and is consistent with the result of the previous experiment which uses network delay autocorrelation model to generate network delay. This experiment indirectly verifies the correctness of the network delay autocorrelation model. Therefore, according to this model, we are able to produce any number of users' network delay in various applications in the future.

45

Figure 29. Response Time with Different Loading in Real World Network

0 5 10 15 20 25

2 0 0 U S E R S 3 0 0 U S E R S 4 0 0 U S E R S 5 0 0 U S E R S 6 0 0 U S E R S 7 0 0 U S E R S

R es po ns e T im e (Seco nd)

Loading (Numver of Users)

Response Time w ith Different Loading in Real -w orld Netw ork

SeeFuND F-SeeFuND SQF LUF Random RR

46

CHAPTER 7

Conclusions and Future Work

In this thesis, we propose a Mobile Banking Messaging as a Service Framework to satisfy the demand of mobile financial service. With the coming of Bank 3.0, users can enjoy the financial service with their mobile devices everywhere. Because of the overwhelming need for network and system resources when the opening of stock markets or astonishing revelation in news happens, the task assignment policy proposed here can be implemented to solve the problems of the explosive need for network resources and unbalanced network.

To verify our algorithm, we proposed network delay autocorrelation model to simulate the realistic condition of network congestion, and we found that when faced with the problem of heavy congestion and explosive need for network resources, we could actually use this algorithm to improve the ability of the system to manage resource. Last but not least, we allocated user robots at datacenter worldwide to verify our experimental results, and the result obtained in the real condition is the same as our simulation result. Therefore, this research can indirectly verify the correctness of the network delay autocorrelation model and the effectiveness of our task assignment algorithm.

In the future, because cloud providers offer computer resources to users on pay-per-use, we will consider the user priority to accommodate the demands of different users. They may enjoy different levels of service quality.

On the other hand, using a fixed number virtual machine configuration may fail to deliver good quality of service when the number of incoming requests rapidly rises. It

47

may leave many virtual machines idle when the number of users is very small. In order to effectively handle a large number of incoming requests, we hope that the system can be auto scaled out before the system is overwhelmed.

48

REFERENCE

[1] KING, Brett. Bank 3.0: Why Banking Is No Longer Somewhere You Go But Something You Do. John Wiley & Sons, 2012.

[2] 陳欣昌. 下一步: 數位證券 3.0. 證券服務, 2014, 628: 9-14.

[3] KING, Brett. Breaking Banks: The Innovators, Rogues, and Strategists Rebooting Banking. John Wiley & Sons, 2014.

[4] 隨時隨地隨取的行動銀行創新實務分享, Available:

https://www.fisc.com.tw/Upload/727606e2-2b6d-450a-a519-950191c11010/TC/14.pdf

[5] SKINNER, Chris. Digital Bank: Strategies to launch or become a digital bank.

Marshall Cavendish International Asia Pte Ltd, 2014.

[6] 分秒必爭,期貨商砸錢提升 IT 系統, Available:

http://news.ltn.com.tw/news/business/paper/654740

[7] XV, Lingbo; MENG, Qingjun. Interference in and Ecological Strategies to Mobile Financial Services Developed by Commercial Banks. Open Journal of Social Sciences, 2015, 3.07: 194.

[12] Apple Push Notification Service, Available:

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conc eptual/RemoteNotificationsPG/Chapters/ApplePushService.html

[13] Parse, Available: https://parse.com/products/push

49

[14] LINE – Naver, Available: http://line.me/zh-hant/

[15] WhatsApp, Available: https://www.whatsapp.com/?l=zh_tw [16] 業界首見!日本 SBI 證券散戶可透過 Line 下單, Available:

http://ascii.jp/elem/000/000/923/923586/

[17] REALTIME, Ignite. Openfire Server, 2009.

[18] Connection Manager Module - Ignite Realtime: Openfire, Available:

http://www.igniterealtime.org/projects/openfire/connection_manager.jsp

[19] XU, Zhong; HUANG, Rong. Performance study of load balancing algorithms in distributed web server systems. CS213 Parallel and Distributed Processing Project Report, 2009, 1.

[20] A predictive modified round robin scheduling algorithm for web server clusters, 2015

[21] SIDHU, Amandeep Kaur; KINGER, Supriya. Analysis of load balancing techniques in cloud computing. International Journal of Computers & Technology, 2013, 4.2: 737-741.

[22] WANG, Weikun; CASALE, Giuliano. Evaluating Weighted Round Robin Load Balancing for Cloud Web Services. In: Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), 2014 16th International Symposium on. IEEE, 2014. p. 393-400.

[23] BUOT, Max. Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Journal of the American Statistical Association, 2006, 101.473: 395-396.

[24] FALLIS, Don. The reliability of randomized algorithms. The British journal for the philosophy of science, 2000, 51.2: 255-271.

50

[25] TENG, Sheng-bo; LIAO, Jian-xin; ZHU, Xiao-min. Dynamic weighted random load balancing algorithm for SIP application server. The Journal of China Universities of Posts and Telecommunications, 2009, 16.4: 67-70.

[26] CHOI, DongJun; CHUNG, Kwang Sik; SHON, JinGon. An Improvement on the Weighted Least-Connection Scheduling Algorithm for Load Balancing in Web Cluster Systems. In: Grid and Distributed Computing, Control and Automation.

Springer Berlin Heidelberg, 2010. p. 127-134.

[27] TEO, Yong Meng; AYANI, Rassul. Comparison of load balancing strategies on cluster-based web servers. Simulation, 2001, 77.5-6: 185-195.

[28] GUPTA, Varun, et al. Analysis of join-the-shortest-queue routing for web server farms. Performance Evaluation, 2007, 64.9: 1062-1081.

[29] GUILLEMIN, Fabrice; SIMONIAN, Alain. Analysis of the shortest queue first service discipline with two classes. In: Proceedings of the 7th International Conference on Performance Evaluation Methodologies and Tools. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), 2013. p. 1-10.

[30] KOKILAVANI, T.; AMALARETHINAM, Dr DI George. Load balanced min-min algorithm for static meta-task scheduling in grid computing. International Journal of Computer Applications, 2011, 20.2: 43-49.

[31] PATEL, Gaurang; MEHTA, Rutvik; BHOI, Upendra. Enhanced Load Balanced Min-min Algorithm for Static Meta Task Scheduling in Cloud Computing.

Procedia Computer Science, 2015, 57: 545-553. x

[32] BONALD, Thomas, et al. A queueing analysis of max-min fairness, proportional fairness and balanced fairness. Queueing systems, 2006, 53.1-2: 65-84.

51

[33] Ahmed El Rheddane, No¨el De Palma, Alain Tchana, Scalable Store and Forward Messaging. In: Cloud Computing (CLOUD), 2013 The Fourth International Conference on Cloud Computing, GRIDs, and Virtualization

[34] ZHANG, Lijun; ZHU, Qiuyu. The Overtime Waiting Model for Web Server Performance Evaluation. In: Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC), 2014 International Conference on. IEEE, 2014.

p. 229-232.

[35] HARCHOL-BALTER, Mor. Performance Modeling and Design of Computer Systems: Queueing Theory in Action. Cambridge University Press, 2013.

[36] ZHANG, Lijun; ZHU, Qiuyu. The Overtime Waiting Model for Web Server Performance Evaluation. In: Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC), 2014 International Conference on. IEEE, 2014.

p. 229-232.

[37] PRABHAVAT, Sumet, et al. Effective delay-controlled load distribution over multipath networks. Parallel and Distributed Systems, IEEE Transactions on, 2011,

[37] PRABHAVAT, Sumet, et al. Effective delay-controlled load distribution over multipath networks. Parallel and Distributed Systems, IEEE Transactions on, 2011,

相關文件