present & apply the final resting place of the osi layers

15
Present & Apply The final resting place of the OSI layers

Upload: megan-coleman

Post on 26-Mar-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Present & Apply The final resting place of the OSI layers

Present & Apply

The final resting place of the OSI layers

Page 2: Present & Apply The final resting place of the OSI layers

Presentation LayerSerialization

• Strings– Pascal (varied length)– Tables (constants)– Base64 (blobs strings)

• Significant Bits– Float Fixed– Matrix Quaternion

• Pointers• Endean Order• Encryption

Page 3: Present & Apply The final resting place of the OSI layers

Presentation LayerBuffering

• Packet Coalescence– TCP vs. Manual

• Induced Latency– Get on the boat

• Dead Data– UDP

• Large Packets– MTU and S/R buffers– Packet Length Indicator

Page 4: Present & Apply The final resting place of the OSI layers

Application Layer

Reflection Models

Page 5: Present & Apply The final resting place of the OSI layers

Application LayerInput Reflection

• Joystick Data

– Buttons

– 2+ axis

• Keyboard Data

– 128+ possible keys

• Mouse Data

– Buttons

– 2+ axis

Page 6: Present & Apply The final resting place of the OSI layers

Application LayerInput Reflection

Pros• Simple Design

– Attached Input

• Accurate• Low Bandwidth

Cons• Hard debugging

– Sync Test

• Latency Sensitive– Stop & Wait

• Predictive Nightmares– Complete State Save

– The Undead

Page 7: Present & Apply The final resting place of the OSI layers

Application LayerState Reflection

• Mutable Objects– Position– Orient– Velocity– Acc– State (Custom)

• Environment State– Open/Closed, On/Off

• Chat

• Off Screen Events

Page 8: Present & Apply The final resting place of the OSI layers

Application LayerState Reflection

• Pros• Easier Debugging• Latency Tolerant• Delta Management

Cons• High Bandwidth• Inaccurate• Hacking• Delta Management

Page 9: Present & Apply The final resting place of the OSI layers

Application Layer

Synchronization

Page 10: Present & Apply The final resting place of the OSI layers

Application LayerLatency

• Delay– Intolerable / High / Medium / Trivial

• Variability– Consistent (The easiest to deal with)– Spikes

• Line Static• Player Induced

Page 11: Present & Apply The final resting place of the OSI layers

Application LayerSynchronization

• Game Time– Clocks & Ticks

• Dead Reckoning– Extrapolation of current state over time

• Play Heuristics– Patterns

• A.I. Assist– Way points (varied conformance)

• Arbitration– Client vs. Server

Page 12: Present & Apply The final resting place of the OSI layers

Application LayerRecovery

• Warping– Last Resort / Easy First Pass

Implementation

• Speed Cheat– Give control to AI and allow special

acceleration boost

• Interpolation– Quaternion Slerping– Modifying control points on SP lines

Page 13: Present & Apply The final resting place of the OSI layers

Application LayerRecovery Bugs

• Brick Wall – Collision Not Synched– Fabricate collision on other machine (difficult)– Flag collision to run under AI control

• Bee Wiggle – Over Compensation– Maintain “Dead Zone”

• Sink or Float – Vertical Terrain– Fasten to ground (or not)

• Rubber Banding– Match speed when approaching target

• Death can’t be undone eloquently– Fudge Health– Synch before death– hang on by a hair.

Page 14: Present & Apply The final resting place of the OSI layers

Mashing Dough

Page 15: Present & Apply The final resting place of the OSI layers

4 GroupsDesign Packets

• Login– Account Create/Edit/Remove

– Verification, Notification, …

• Chat– Groups, Buddies, Admin, System, …

• Simulation– Move, Fire, Arbitration, …

• Voyeurs– Web Leader Board

– Web applet (Maps / Scores, for Game in Progress)