minemaworkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · vector t s v [t,s,v]...

23
1 Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa MiNEMA Workshop 2008 Vector-Field Consistency: Middleware for Ad-hoc Gaming and Beyond Luís Veiga Distributed Systems Group @ INESC-ID / Technical University of Lisbon work partially described in Vector-Field Consistency for Ad-hoc Gaming Nuno Santos, Luís Veiga, Paulo Ferreira ACM/IFIP/Usenix Middleware 2007 2 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Talk Outline ...Introduction Motivation Problems and Current Approaches Insights and Basic Idea ...Vector-Field Consistency... Approach Model, Entities, Architecture, Mobihoc: VFC for Ad-hoc Gaming Evaluation and Language Integration Beyond... Current Development On-going and Future Work

Upload: others

Post on 26-Oct-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

1

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

MiNEMA Workshop 2008

Vector-Field Consistency:

Middleware for Ad-hoc Gaming and Beyond

Luís Veiga

Distributed Systems Group @ INESC-ID / Technical University of Lisbon

work partially described in Vector-Field Consistency for Ad-hoc Gaming

Nuno Santos, Luís Veiga, Paulo Ferreira ACM/IFIP/Usenix Middleware 2007

2MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Talk Outline

...IntroductionMotivation

Problems and Current Approaches

Insights and Basic Idea

...Vector-Field Consistency...Approach Model, Entities, Architecture,

Mobihoc: VFC for Ad-hoc Gaming

Evaluation and Language Integration

Beyond...Current Development

On-going and Future Work

Page 2: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

2

3MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Motivation

Data Sharing

Ad-hoc Networks

Distributed Multiplayer Games

Enforce

Game Rules

4MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Problem: Consistency vs Playability Tradeoff

Strong

Consistency(Update Propagation)

Good

Playability(Speed/Fluidity,

Scope)

Hard!

P1

P2

P3P4

P1

P2

P3

P4

Page 3: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

3

5MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Shortcomings of Current Approaches

Programming tweaks by application programmersConfigure messaging infrastructure

Game-play prediction (e.g., based on position, direction, speed)

Difficult and error-prone management

Locality aware middleware for multiplayer games Server hand-off

Explicit scenery division (e.g., walls, doors, portals)

Game-play Inflexibility

Limited consistency management (all or nothing)

Optimistic Replication schemes (e.g. TACT) User and application semantics, Divergence bounding

Cooperative Work, Databases

No notion of spatial locality associated with data

Fixed parameters ����Reduced adaptability to game dynamics

6MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Some Insights

Locality clearly drives/rules game interactions

Most game entities have associated spatial position (e.g., 2D/3D world)

e.g., player, enemy, monster, bonus/treasure, trap, flag, shot fired

Interactions between nearby entities

more probable and more relevant to game logic (e.g., to hit/not to hit enemy)

Influence of events on game entities fades out with distance

Limited weapon shooting range/speed

Limited player/enemy speed

Limited visualization scope/area

Less likely to affect (e.g., attack) or be affected by farther entities

exceptions: capture opponents’ flag, special weapons, etc.

Strict consistency not always required

Events taking place far from player, interesting but not essential

Require less update recency, frequency, and accuracy

Players can still make “consistent” decisions with limited information

Page 4: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

4

7MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Basic Idea

Provide player with better information w.r.t. closer eventsMore important for game decision and real-time action

Ensures player perceives compliance of game rules

Provide player with some information w.r.t. far eventsstill important for overall game strategy and quality

avoids player perceiving simulation disruption or limitation

open field simulation, no artificial boundaries (walls, doors, portals)

Apply discreet consistency field to game data

Inspired on gravitational and electrical fields.

Intensity decreases continuously with distance

Inspired on dolphins/bats/submarine echo location

Longer range readings imply less precision in results

Combine the advantages of existing work

8MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Talk Outline

...Introduction...Introduction...IntroductionMotivationMotivationMotivation

Problems and Current ApproachesProblems and Current ApproachesProblems and Current Approaches

Insights and Basic IdeaInsights and Basic IdeaInsights and Basic Idea

...Vector-Field Consistency...Approach, Model, Entities, Architecture

Mobihoc: VFC for Ad-hoc Gaming

Evaluation

Beyond...Beyond...Beyond...Current DevelopmentCurrent DevelopmentCurrent Development

OnOnOn---going and Future Workgoing and Future Workgoing and Future Work

Page 5: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

5

9MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Our Approach

Tolerate bounded inconsistencies

P1

P2

P1 P2

P1

P2

How to bound inconsistency?

10MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC - ApproachViewpoints & Consistency Zones

stronger weaker

Viewpoint

Consistency Zones

Consistency Level

Page 6: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

6

11MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC - Consistency Vectors

stronger weaker

Consistency Level

Time

0 ∞

Time unit

Sequence

0 ∞

Number of lost updates

Value

0 100

Percentage

Consistency

Vector

t

s

v

[t,s,v]

12MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Contribution

Consistency model

Locality-awareness

techniques

Techniques for limiting

replica divergence

Straightforward abstractions

Mobihoc platform (J2ME)

o2

o1

o3

o4

o5

- Viewpoint

- Consistency zones

- Consistency vectors:

[Time, Sequence, Value]

Vector-Field Consistency (VFC)

Page 7: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

7

13MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFCVirtual World & Replicated Views

Replicated

Views

7x6

o2

o1

o3

o4

o5

Virtual

World

14MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFCConsistency Management

Page 8: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

8

15MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFCSpecification Example

VFC Parameters

P= {o5}

Z= [1,2,3,4]

C=<[-,2,-], [-,4,-], [-,6,-], [-,8,-]>

16MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFCGeneralizations

o1

o2

P o4

o5

o3

o6

o7

z0z1

z0z1z2

o8

Multi-Viewpoint

z0

z1

z2

Multi-Zones

P2

o1

o2

o3 o6

o5

o4

P1

Page 9: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

9

17MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

MobihocArchitecture

Hub/PlayerPlayer Player

Player

P PH/P

P• Prototype in J2ME

• Communication using Bluetooth

• Data as graphs of objects

• VFC parameters as class attributes

• Serialization library

18MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

MobihocReplica Management

VFC Messages

• Contain players’ VFC parameters

P PH/P

P

Page 10: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

10

19MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

MobihocReplica Management

P PH/P

PUpdate Messages

• Contain player nodes’s updates

Round Messages

• Periodic (1/round)• Contain updates

PrimaryReplica

Replica

Replica

20MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

MobihocVFC Algorithm

Send the minimum updates to enforce the players’ VFC parameters -φ(c)

Main steps

Obtain the consistency degree per object per player

Send updates if it is necessary to enforce consistency degree

For each player node c

For each object o

Get κ consistency degree

of object o based on

φ(c) and the current state

If κt or κs or κv do not hold

Attach o update to cround message

HUB

When the round alarm triggers, do:

Send round messages to player nodes

Page 11: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

11

21MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

MobihocVFC Algorithm Cost

Tests performed on Nokia 6600 phones6 MB onboard to act as memory and storage space

0

20

40

60

80

100

120

140

160

180

0 2 4 6 8 10

x1000Object pool size (# objects)

Eva

luat

ion

tim

e (m

s)

100%

50%

0%

% Updates

to be sent

40kB

20kB

0kB

28kB

14kB

0kB

16kB

8kB

0kB

4kB

2kB

0kB

best case

worst case

serialization

cost

22MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC - Multiplayer Pacman Game

Proof-of-concept

Distributed multiplayer Pacman

Nokia phones

Bluetooth

8x8 Maze Grid

VFC application

3 Zones

Room

Adjacent Rooms

Rest of Grid

sequence dimension

Page 12: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

12

23MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC – Language Integration

Integration with high-level programming languagese.g., Java and C#.

Key aspect to usability

VFC φ settings.Pivots

registered by name, e.g.,

setPivot(String, Object) and setPivot(String, Object []).

Sets of objects

selected by applying VFC declarative tags to object classes in source code

Java annotations, e.g., (@VFCPlane{}, @VFCZone{})

.Net attributes ([VFCPlane()], [VFCZone()])

parameters stating zone ranges and κ-tuple components

(e.g. @VFCZone{int range, float time, int sequence, float valueDiff}).

24MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC – Language Integration

Java support for annotations is limited.

In J2SE, it disallows multiple applications of the same annotation

Even with different parameters to the same class.

We make use of composite annotations (e.g. @VFCPlane{})

Encapsulate parameters of multiple @VFCZone{} annotations.

Difficult to write and syntax-error-prone.

J2ME has no support for annotations whatsoever.

We parse annotations as source code comments

Extend classes to bear annotation parameters as private static fields

Page 13: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

13

25MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC – Language Integration

.Net has fully flexible attribute framework

including .Net CF

supports multiple application of attributes to classes

eases programmers’ lives

E.g., [VFCZone(range,time, sequence, valueDiff])

applied as

[VFCZone(10,0.5,5,0.2)],

[VFCZone(20,1.5,15,0.6)],

[VFCZone(30,4.5,25,0.9)]).

26MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC – Language Integration

To allow inspection of objects by Mobihoc,

classes implement IVFCConsistency interface with three

methods:

getPosition()

for objects to provide their current coordinates in the virtual world,

getValue()

to provide their internal data to be propagated,

valueDiff(object)

to provide an application-dependent measure (in percentage) of

difference w.r.t. contents of another object.

Page 14: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

14

27MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Talk Outline

...Introduction...Introduction...IntroductionMotivationMotivationMotivation

Problems and Current ApproachesProblems and Current ApproachesProblems and Current Approaches

Insights and Basic IdeaInsights and Basic IdeaInsights and Basic Idea

...Vector...Vector...Vector---Field Consistency...Field Consistency...Field Consistency...Approach, Model, Entities, ArchitectureApproach, Model, Entities, ArchitectureApproach, Model, Entities, Architecture

Mobihoc: VFC for AdMobihoc: VFC for AdMobihoc: VFC for Ad---hoc Gaminghoc Gaminghoc Gaming

Evaluation and Language IntegrationEvaluation and Language IntegrationEvaluation and Language Integration

Beyond...Current Development

On-going and Future Work

28MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – Bytecode Enhancement

To apply VFC when source code unavailable

Extracts availabe information from:

annotations/attributes/comments

Phase 1: Analysis

Processes XML files with additional information:

relevant object field names

e.g. player position, etc.

Analyses class byte-codes

looks for operations on replicated data

reads and updates to relevant fields

annotates metods with Read/Write tags and places custom op-codes

Page 15: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

15

29MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – Bytecode Enhancement

Phase 2: Perform class extension

Bytecode enhancement

Injects middleware code

Read and write operations previously identified

Insert bytecodes to invoke VFC class library

Leverages existing tools

BIT,

BCEL,

JOIE,

Javassist, etc.

30MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – Multiplayer Games

Type of

Game

# MaxPlayers

MaxLatency (ms)

ScenerySize

# EntitiesControlled by

Player

FPS 12 to 32 100 small 1

RPG(MMORPG)

2 to 12(thousands)

500 large 1

RTS 6 to 12 1000 medium 10 to 100s

Game Type Architecture Communication

World of Warcraft RPG Server network TCP/UDP

MiMaze FPS P2P multicast

Age of Empires RTS P2P broadcast

Mercury FPS P2P pub-sub

NPSNET 3DFPS

(vehicle simulator)P2P multicast

Page 16: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

16

31MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – Multiplayer Games

VFC better suited for FPS

Actually designed for them

Easier to identify pivots, and define consistency zone radius

Also applies to RPG but less demanding

VFC less suited to RTS

User controls large number of entities

No single spatial position for each user

More difficult to identify pivots

More pivots to manage

hopefully, will imply smaller consistency zones

32MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – Multiplayer Games

VFC better suited for FPS

Actually desgined for them

Easier to identify pivots, and define consistency zone radius

Also applies to RPG but less demanding

VFC less suited to RTS

User controls large number of entities

No single spatial position for each user

More difficult to identify pivots

More pivots to manage

hopefully, will imply smaller consistency zones

Page 17: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

17

33MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development - XNA

VFC in distributed desktop/TCP scenario

More sophsiticated setting than PacMan

More players

Larger scenario

Faster game

More kinds of interaction among players

Not just eating dots

More lasting influence of game events

e.g., shots, explosions have range and time duration

VFC for .Net XNA GamesC# .NET with XNA Game Studio 2.0

34MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – XNA Net Rumble

FPS game: Net Rumble

Complete XNA Game Studio game

Build, play, and modify sceneries

Showcase new multiplayer features in XNA Game Studio

Two-dimensional shooter

Up to sixteen players compete online

Death match arena

ships, asteroids, lasers.

Page 18: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

18

35MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

XNA Net Rumble

36MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – XNA Net Rumble

Overall ApproachImpact: Measure source code modifications

Favouring declarative and autogenerated source code extensions

Partial class feature in C# from 2.0

Evaluation: confirme game rules compliance inspite of divergence bounding

Performance:measure traffic reduction

different scenarios (zones, players, etc)

measure CPU load

Page 19: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

19

37MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Current Development – XNA Net Rumble

ArchitectureCentralized (Client-Server)

Simplified development

Game rules verification

Reference for performance measurements

Distributed (P2P)Increased availability and performance

Larger number of players

Potentially increase VFC benefits

Still on-going workCurrently employs one peer as coordinator

38MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC XNA Net Rumble Architecture

Coordinator/Player

Player

Player

Player

P

P

C/P

P

NetworkLAN,P2PNetworkLAN,P2P

Page 20: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

20

39MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC XNA Net Rumble Architecture

Update Messages

•Asynchronous

•Contain player nodes’s updates

•Sent to primary of each scenery fraction

Primary Messages

•Contain updates

•Tailored to replica

consistency requirements

•Not periodic

• Omitted when unneeded

Coordinator

•Handling node enrollment

•Game coordination (start, stop)

•Decides load-balancing parameters

•Clock sync if needed

Player

•Exchanges VFC messages

•Manages fraction of replicated data

•Propagates updates

40MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC XNA Net Rumble

Advantages for DevelopersVFC intuitive for game developer

easy to decide pivots, consistency zones, consistency vectors

adaptable to different game settings

avoid explicit coding for synchronization/consistency

Better resource usage

does not require artificial limitations on game scenery

Advantages for Players

Increased Gaming Experience

game rule compliance is preserved, game logic does not crumble down

user provided with enough (more) information to decide playing

even if some is partially inconsistent, better than none

Page 21: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

21

41MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

VFC XNA Net Rumble

- Larger

Scenery

- Wider

Visualization

- Consistency

Zones

42MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

XNA Net Rumble with VFC

Shooting

And

Explosion

Page 22: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

22

43MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Future Work - Next

More games

Fully decentralized version of VFC

Employ different data propagation approaches

Pull (pre-fetch) vs push

Check on use

Combination with opportunistic approaches

Use forwarding of update noticements (no actual content)

E.g., just forwarding number of updates performed to

Trigger pulling updated values before divergence bound is reached.

44MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Other Directions

Application to Distributed VMs

E.g., Terracotta Java DVM

Cooperative Editors

Optimistic Consistency

Development tools for programmers

Code synchronization/change notification

Web, Wikis, other graph/network data

Replication/Caching management

....

Page 23: MiNEMAWorkshop 2008 - gsd.inesc-id.ptlveiga/papers/vfc-minema-eurosys.pdf · Vector t s v [t,s,v] 12 MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01 19:58 Contribution Consistency

23

45MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

Conclusion

VFC – Vector-Field Consistency

Unifies locality-awareness with replica divergence

bounding techniques

Efficient regarding CPU and network bandwidth

Intuitive for game designers in describing consistency

requirements

Not necessarily programmers

Continuing work...

46MiNEMA Workshop 2008 - Luís Veiga, et al. 2008/04/01

19:58

The End

Thank you

More info onhttp://www.gsd.inesc-id.pt/

Questions?

Other people in VFC teamColleagues

Nuno Santos, Paulo Ferreira

Students

José Lopes, Tiago Bernardo

Dinis Lage,

Stoyan Garbatov, Ivo Anjo, Hugo Rito