670 likes | 865 Views
Modeling and generation of network traffic based on user behavior. Mirko Suznjevic University of Zagreb, Faculty of Electrical Engineering and Computing Unska 3, Zagreb, Croatia mirko.suznjevic@fer.hr. Problem. Highly erratic traffic of complex Networked Virtual Environments (NVE)
E N D
Modeling and generation of network traffic based on user behavior Mirko Suznjevic University of Zagreb, Faculty of Electrical Engineering and Computing Unska 3, Zagreb, Croatia mirko.suznjevic@fer.hr
Problem • Highly erratic traffic of complex Networked Virtual Environments (NVE) • Focus on games • How player behaviour at application level affects networks traffic characteristics • Single flow level • Aggregated flows • Implementation of behaviour based traffic generator • Results enable: • Better infrastructure planning and optimization • Testing
Problem I Same application! Highly variable bandwidth usage (client side)
Problem II M. Kihl, A. Aurelius, and C. Lagerstedt, “Analysis of World of Warcraft traffic patterns and user behaviour,” in International Congress on Ultra Modern Telecommunications and Control Systems and Workshops, 2010, pp. 218–223. Server traffic patterns
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
Definitions S. Singhal and M. Zyda, Networked Virtual Environments: Design and Implementation. Addison-Wesley Professional, 1999 • “An NVE may be defined as a software system in which multiple users interact with each other in real time, even though those users may be located around the world” • Massively Multiplayer Online Role-Playing Game (MMORPG) • Players assume the role of a character (in a persistent virtual world) and take control over many of that character's actions • Currently the most popular application of NVEs • Client-server architecture
Economic aspects NewZoo, “National Gamers Survey 2010 | USA,” Tech. Rep., 2010. [Online]. Available: http://www.newzoo.com/press/NationalGamersSurvey2010_Summary_US.pdf • Number of players is constantly increasing • 460 MMORPGs active / in development (mmorpg.com) • 54 million MMO players in USA alone • Why? • Players: A complex question… • Developers: Constant revenues • Business models • Subscription based • Selling content updates • Selling virtual items (micro transactions)
Number of subscriptions I. V. Geel. (2012, Mar) Mmodata charts v3.8. [Online]. Available: http://mmodata.net/
Goal and approach • Goal: • To create a behaviour based MMORPG network traffic model • Steps: • Define what is application level player behaviour • Measure network traffic (in terms of defined behaviour) • Create models of network traffic • Measure player behaviour • Create models of player behaviour • Create a software implementation of the models (traffic generator)
Methodology • Measurements • Network traffic • Player behaviour • Using existing datasets • Number of active players • Modelling • Network traffic • Application Protocol Data Unit (APDU) • Inter-arrival times (IAT) • Player behaviour • Number of active players • Session length • Transitions between action categories • Duration of action category specific session segments • Exploring psychological motivations
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
Player behaviour at the application level • Session lengths – OK • Number of players – OK • Session composition – ? • How to measure what exactly players do in MMORPG? • Many possible (inter)actions • Vast virtual worlds • Possibility of countless different situations • Classification (grouping) of possible situations in virtual world • Generally applicable • Based on both player input and surroundings • Meaningful in relation to game design • Approach based on user actions
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
Methodology – Network traffic Find experienced players Install Wireshark Perform specific tasks in game Create models Process data Submit .PCAP files Zagreb, 2012 22 /67
Traffic capture • Performed by 6 experienced WoW players (volunteers) • Players instructed to capture action specific traffic • Traffic capture done with Wireshark • Main issue – immersion • Result – 83 context specific traces (1,395,940 packets)
Traffic filtering P. Svoboda and W. K. M. Rupp, Traffic analysis and modeling for World of Warcraft, In Communications, 2007. ICC '07. IEEE International Conference on, pages 1612-1617, 2007 Large signalling overhead Removed TCP ACK packets carrying no payload Extraction of APDU sizes and inter-arrival times
Traffic modeling methodology APDU sizes and IATs are modelled for server and client traffic for each action category • Choosing an analytical distribution by examining CDF with the help of Q-Q plot • Choosing optimal bin size • Choosing a split distribution if the fit is deviating severely in a part of the distribution
Traffic modeling methodology II Calculating the discrepancy measure
Traffic modeling methodology III Examination of the tail Calculating the autocorrelation
Resulting model A. Dainotti, A. Pescape, and G. Ventre, “A packet-level traffic model of Starcraft,” in HOT-P2P ’05: Proceedings of the Second International Workshop on Hot Topics in Peer-to-Peer Systems, 2005, pp. 33–42.
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
Methodology –Player behaviour Find players Install WSA-Logger PLAY (WoW add-on) Create models Process data Submit log files
Behaviour measurements 1st – initial study 2nd – main study (additionally, psychological motivations of players are measured) 3rd – additional study for better understanding of uncategorized periods (through location inspection)
WSA-Logger • Add-on for WoW • Events are fired by WoW API when something happens within the virtual world • Some events can be assigned to action categories • WSA-Logger captures and stores classified events in a log file • Players behaviour can be retraced from the log
Psychological motivations N. Yee, “Experimental Motives for Playing Online Games,” Journal of CyberPsychology and Behavior, vol. 9, no. 6, pp. 772–775, 2007
Model - Session length • Weibull distribution (confirms previous results) • Significant hourly differences
Model – Player number D. Pittman and C. GauthierDickey, “A Measurement Study of Virtual Populations in Massively Multiplayer Online Games,” in Proceedings of the 6th ACM SIGCOMM Workshop on Network and System Support for Games, 2007, pp. 25–30. Y.-T. Lee, K.-T. Chen, Y.-M. Cheng, and C.-L. Lei, “World of Warcraft avatar history dataset,” in Proceedings of the second annual ACM conference on Multimedia systems, 2011, pp. 123–128. • Modelled both arrival and departure processes as Homogenous Poisson Process (HPP) • Rates calculated for each hour of each day of the week • Two categories (weekdays and weekends) Pitman et al. Dataset Lee et al. dataset
Model – Player number II J.-E. Tyvand, K. Begnum, and H. Hammer, “Deja vu - Predicting the number of players in online games through normalization of historical data,” in Proceedings of 10th workshop on Network and system support for games, ser. NetGames ’11, 2011, p. 13:2 • Different scales of player number • Preserving “the shape of the curve” • Steps: • Normalization of the curve from existing datasets • Prediction of the number of players based on estimated average number of players during the day • Estimation of the parameters of the HPP based on the prediction
Session composition Session segments Questing Trading PvP Combat Questing Trading • Session segment – part of the session containing only player actions of certain type • Duration • Probability
Model – Segment duration • Session segment duration for every hour of the day • Raiding – hour specific models • Other categories – 1 model for the whole day • Underlying distribution determined through Maximum Likelihood Estimation (MiniTab)
Segment duration goodness of fit Questing, Trading, and PvP combat
Segment duration goodness of fit II Dungeons
Segment probability Trading Questing PvP combat Raiding Dungeons
Model – Segment probability 1st order Markov chain for each hour of the day
Outline • Problem • Introduction • Categorization of user actions • Network traffic • Player behaviour • Traffic generator – UrBBaN-Gen • Conclusion
UrBBaN-Gen • UserBehaviour Based Network Traffic Generator • Design ideas • Scalable • Virtualization • Expandable • Service independent • Modular • Low-cost