• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
IEEEINTERNETCOMPUTING1089-7801/05/$20.00 © 2005 IEEEPublished by the IEEEComputer SocietySEPTEMBER OCTOBER 2005 47
   O  n   l   i  n  e   G  a  m   i  n  g
Tsun-Yu Hsiaoand Shyan-Ming Yuan
National Chiao Tung University 
Practical Middleware forMassively MultiplayerOnline Games
A massively multiplayer online game (MMOG) lets thousands of players interactsimultaneously within a virtual world via the Internet.Middleware plays animportant role in the development of next-generation MMOGs,which must bebuilt on platforms that address not only the service aspect,but also codemaintainability and development for programmers.The authors’ compact,high-performance message-oriented middleware has a code-generation programmingmodel that is designed to address many of these problems.
M
assively multiplayer online games(MMOGs) let thousands of players(between 6,000 and 10,000,accordingto general reports from gamecompanies) simultaneously interact inpersistent, online, multiplayer-onlyworlds. The most popular examples areSony’s EverQuest, NC Soft’s Lineage, andBlizzard’s World of Warcraft (see www.mmogchart.com for the analysis of sub-scription growth). The MMOG sector gen-erates the majority of online gamingrevenue, especially in the Asia/Pacificregion, which has the largest marketworldwide. According to IDC’s Asia/Pacific Online Gaming report, the markethas grown over the past several years,commanding US$1 billion in subscrip-tion revenue in 2004, and will more thandouble by 2009 (www.idc.com/getdoc. jsp?containerId=pr2005_08_04_110417).This rapidly growing MMOG marketsignifies entertainment computing tech-nologies’ importance, and has forcedgame makers to step up competitively.However, several challenges exist for  vendors with regard to development, ser- vice, and security. Given that these com-panies’ ultimate goal is to increase profits,they need a low-cost, robust, scalable,secure, attractive MMOG service toimprove development and decrease timeto market.Middleware helps programmers man-age the complexity and heterogeneity of distributed computing environments.
1,2
Toaddress the challenges that vendors (andeven players) face when developing andmaintaining MMOGs, we’ve developed theDistributed-organized Information Terra(DoIT) middleware platform. We beganthis project in 2002 at National Chiao
 
Tung University’s (NCTU) Department of Computer and Information Science. This article explains our experience and outlines the components essentialto crafting a practical MMOG middleware.
MMOG Development Challenges
Creating a MMOG typically takes two to three timesas long as creating and launching a traditional sin-gle-player game (two to three years versus 9 to 12months). A MMOG project from a major PC gamesstudio can require a five-year timetable and hun-dreds of people’s efforts prior to release. (For exam-ple, Electronic Arts/Westwood Studio’s Earth &Beyond MMOG didn’t appear until 2003, eventhough its blueprint stage began in 1998 — and EAshut it down in September 2004 to focus resourceson new games.) Westwood and other game vendorsproduced single-player or matching games (net-work games involving between 16 and 64 players,usually implemented via peer-to-peer technology)throughout the nineties, but competing in today’sMMOG market requires such vendors to utilize dis-tributed technologies and concepts and familiarizethemselves with network issues. (Korean vendors’efforts in this arena have led the country to its cur-rent position as the preeminent exporter of MMOGsworldwide [www.idc.com/getdoc.jsp?container Id=IDC_P6396].)Once a MMOG becomes available to gamers, vendors often encounter problems with versioning(fixing bugs, adding content, and so on). Further-more, most MMOGs are client-server programs;game companies generally host their virtual worldson dedicated servers or ISPs’ Internet data centersin chosen collocations (in which they rent a securespace with reliable high-speed network connectiv-ity in data centers while maintaining their ownequipment and services). Once a game beginsonline operation, service providers must make itscontent attractive enough to induce users to stickwith it. Thus, developing the content is only thebeginning — continuity and profit depend on qual-ity of service (QoS) and attractiveness to end usersover time. Service reliability, availability, restora-bility, and scalability are vital issues for success.Security is also critical because MMOGs are justas vulnerable to hackers as any other Internet ser- vices. Fortunately, industry-standard firewall andintrusion-detection technologies can reduce theeffects of most attacks. In-game (application-level)cheating and attacks on content protocols (theplayers’ command formats and their contents) aretroubling issues, however, because fake and illegalprotocols affect QoS and the games’ fairness. In the Asia/Pacific region, the most common securityproblem comes from users’ running illegal plug-ins or cheat programs (such as artificial intelli-gence robot programs) to play MMOGs for easymoney or experience points. This is both unfair toother gamers and degrades QoS for vendors, whomust do more server-side checks to prevent cheat-ing. Yet, counterattacking these programs is nosimple task, given that attackers have the clientprogram, and can thus access the execution codeand restore and analyze the protocol’s format. Widespread culprits in China have become such asignificant nuisance that vendors can’t simplyignore them because MMOG players are likely toquit rather than continue with an unfair or vul-nerable MMOG service.
MMOG Platform Architecture
By using middleware to build MMOGs, program-mers can manage the complexity and heterogene-ity of distributed computing environments, andpossibly address the development, service, andsecurity issues we’ve outlined here. A virtual-worldplatform solution based on distributed technolo-gies can help vendors build MMOGs quickly, with-out having to worry about network-transmissionissues or collaboration between servers or clients.Using middleware to support a MMOG isn’t anew idea. Researchers have devoted much effort tobuilding frameworks to support MMOG develop-ment,
3–5
generally as distributed systems with
n
-tier architectures. Figure 1 shows an example of such asystem with a 4-tier architecture comprising aclient, proxy/gateway, cell server, and database:Gamers control the client applications, whichdeploy and run graphics, the user interface, andnetwork communication.The proxy/gateway is important not only inforwarding packets but also in providing secu-rity functionalities (as it can work like a fire-wall or run the protocol-checking procedure)for cell servers and cooperating with portals or billing systems.The cell server houses, maintains, and executesthe virtual world. It also receives players’ con-trol commands and verifies, computes, updates,and then forwards new player states to allgamers who will be affected by thesecommands (for example, a successful
move
command will generate a player’s new position —player state — on the virtual-world map.
48SEPTEMBER OCTOBER 2005www.computer.org/internet/IEEEINTERNETCOMPUTING
Online Gaming 
 
The database stores periodically updated play-er states to ensure that players continue to existin the virtual world.Most commercial products use this generic archi-tecture because the proxy’s security functionalitiesfacilitate antihacking efforts in both MMOG andenterprise-computing environments and because itprovides a suitable mechanism for billing players.Other research and open-source middlewareprojects for MMOGs have proposed similar archi-tectures. Mauve and colleagues’ work indicatesthat the proxy can take over certain server func-tions to help distribute the processing load, pre- vent cheating,
4
and — using a hardware solutionto speed up processing — improve scalability.
5
 Wecan also view the proxy as an extension of theserver that can provide flexibility during gamedesign and deployment. Moreover, proxies canhelp assure cell servers that they can trust infor-mation coming from the proxy. (For more infor-mation on other MMOG middleware technologies,see the “Related Work in MMOG Middleware Proj-ects” sidebar.)
Practical Next-GenerationMMOG Middleware
Current MMOG technologies focus on providing ascalable, reliable, fault-tolerant, low-cost, load-balancing, single-sign-on, secure framework for building seamless virtual worlds — no shards (iden-tical copies of online games on different server clusters), specific servers, or zones, so that all play-ers essentially exist in the same game world. How-ever, only a few new MMOGs have been based onsuch frameworks, and fewer are currently in oper-ation. For this reason, rather than developing solu-tions themselves, game vendors who are unfamiliar with distributed technologies would benefit fromeasy-to-use MMOG middleware that addresses QoSand helps provide code that’s easy to develop andmaintain. A MMOG platform should satisfy four essential “ease of” requirements, in addition to theaforementioned gateway, functionality, perfor-mance, and security needs.
Ease of Development
The MMOG platform shouldprovide easier and faster ways to develop con-tent,hide the underlying network programmingfrom the content programmer (which simplifiesactual game programming), andprovide an API that’s simple and flexibleenough to let developers focus on content andpresentation.Interface definition language-based programmingparadigms with automatic code-generation mech-anisms would be a good choice to satisfy theserequirements.
Ease of Deployment
Most MMOG vendors frequently update their gamecontent because doing so provides better, moreattractive service. The middleware platform’sarchitecture should provide both servers andclients with straightforward ways to deploy con-tent, especially in collocationenvironments, inwhich all content must be updated remotely.
IEEEINTERNETCOMPUTINGwww.computer.org/internet/SEPTEMBER OCTOBER 200549
 Middleware for MMOGs
Internet
UserUserUserUserUserUser
DatabaseFirewallSwitch fabricGatewayGatewayGatewayGatewayCell serverDatabase serverCell serverCell serverCell serverGatewayCell serverSwitch fabricSwitch fabric
Figure 1.Generic 4-tiered MMOG architecture.Gamers (users)control the client,which runs graphics and the user interface.Theproxy/gateway acts as security for the cell servers,which house,maintain,and execute the virtual world.The database periodicallstores player states.
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...