§9 Compensating Resource Limitations §9 Compensating Resource Limitations Information Information- -Centric Centric View of Resources View of Resources � aspects of compensation aspects of compensation � � information principle equation information principle equation � � consistency and responsiveness consistency and responsiveness � � Bandwidth requirements increase Bandwidth requirements increase � � Additional Additional players players require require � � scalability scalability � with the number of players with the number of players additional processor cycles at additional processor cycles at � protocol optimization protocol optimization � � Each additional Each additional player player the existing the existing player’s player’s host host � � dead reckoning dead reckoning � must receive the initial must receive the initial game game � Each additional Each additional player player � � � state and the updates that other state and the updates that other � introduces new elements to introduces new elements to � local perception filters local perception filters � � users are already receiving users are already receiving render render � synchronized simulation synchronized simulation � introduces new updates to the introduces new updates to the � � � increases the amount of increases the amount of � existing existing shared state shared state and new and new caching (new shared state ) caching (new shared state ) � area area- -of of- -interest filtering interest filtering � interactions with the interactions with the existing existing � increases the number of increases the number of � players players updates to receive and handle updates to receive and handle � introduces new shared introduces new shared state state � Information Principle Equation Information Principle Information Principle Information Principle Equation Resources = Resources = M M × × H H × × B B × × T T × × P P The resource utilization is is directly related to the amount of directly related to the amount of The resource utilization The resource utilization is directly related to the amount of information that must be sent and received by each host and information that must be sent and received by each host and information that must be sent and received by each host and M = = number of number of m messages transmitted essages transmitted how quickly that information must be delivered by the how quickly that information must be delivered by the M how quickly that information must be delivered by the network. network. H = = average number of destination average number of destination h hosts for each message osts for each message network. H B = = average amount of network average amount of network b bandwidth required for a andwidth required for a B � The most scalable The most scalable networked application networked application is the one that does is the one that does message to each destination message to each destination � not require not require networking networking T = = t timeliness in which the network must deliver packets to each imeliness in which the network must deliver packets to each T � � destination destination � To To achieve scalability and performance, achieve scalability and performance, the the overall resource overall resource � P = = number of number of p processor cycles required to receive and process rocessor cycles required to receive and process P penalty incurred within a networked application must be a networked application must be penalty incurred within each message each message reduced reduced Information Principle Equation as a Tool Information Principle Equation: Examples Equation: Examples Information Principle Equation as a Tool Information Principle Each reduction ⇒ ⇒ a compensating increase or a compensating � Each reduction a compensating increase or a compensating � p 1,1 p 1,2 p 1,n degradation in the quality degradation in the quality 36 bytes 36 bytes Server 1 Message compression Message compression Server- -network network Server � How to modify depends on the application How to modify depends on the application � Server 2 Server 3 24 bytes 24 bytes p 2,1 p 2,2 p 2,n p 3,1 p 3,2 p 3,n Dead Reckoning Dead Reckoning M M H H B B T T P P M M H H B B T T P P M M H H B B T T P P 1
Consistency and Responsiveness Consistency and Responsiveness Absolute Consistency Absolute Consistency � consistency consistency � To guarantee To guarantee absolute consistency absolute consistency among the among the nodes, nodes, the data source must wait until the data source must wait until � � everybody has received the information before it everybody has received the information before it can can proceed proceed � similarity of the view to the data in the nodes belonging to a n similarity of the view to the data in the nodes belonging to a network etwork � � delay from original delay from original message transmission, message transmission, acknowledgements, acknowledgements, possible retransmissions possible retransmissions � � responsiveness responsiveness � � The source can generate updates only at a limited rate The source can generate updates only at a limited rate � � delay that it takes for an update event to be registered by the delay that it takes for an update event to be registered by the nodes nodes � � Time Time for the communication protocol to reliably disseminate the stat for the communication protocol to reliably disseminate the state updates to the e updates to the � � traditionally, consistency is important traditionally, consistency is important � remote nodes remote nodes � distributed databases distributed databases � ⇒ responsiveness is important and consistency can be � real real- -time interaction time interaction ⇒ responsiveness is important and consistency can be � compromised compromised ⇒ the game world can either be the game world can either be ⇒ I’m at (15, 25 15, 25) ) I’m at ( I’m at (10, 20 10, 20) ) I’m at ( � a a dynamic world dynamic world in which information changes frequently or in which information changes frequently or � A A A A A A � a a consistent world consistent world in which all nodes maintain identical information in which all nodes maintain identical information T T � r r a a n n A is at ( A is at (10, 20 10, 20) ) s s m m i i t t but it cannot be both but it cannot be both Acknowledge Acknowledge B B B B B B Currently After 100 ms After 100 ms After 200 ms After 200 ms Time Currently Time High Update Rate Trade- -off Spectrum off Spectrum High Update Rate Trade � There is a delay before the state change is received by other There is a delay before the state change is received by other nodes nodes � Available network bandwidth must be allocated between Available network bandwidth must be allocated between � � � If the If the state information state information is updated often, it might be updated while is updated often, it might be updated while the previous the previous update update � � messages for updating the messages for updating the state information and state information and � messages are still on the way messages are still on the way � messages for maintaining a consistent view of messages for maintaining a consistent view of the the state information state information � � Whilst some Whilst some nodes nodes see new see new values, values, others may still see older others may still see older ones ones � among among participants. participants. � Because of the inherent transmission delay, Because of the inherent transmission delay, one one cannot update the shared state frequently and cannot update the shared state frequently and � still ensure that all remote hosts have already received all previous state updates still ensure that all remote hosts have already received all pre vious state updates High High Absolute Absolute update rate update rate consistency consistency S S The trade trade- -off off spectrum spectrum The Relay Model Two- -Way Relay Way Relay Relay Model Two f local local global global f i local i o o global local global node node network network o local i global o i relay relay local global g g 2
Recommend
More recommend