Torque Network Library - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

Torque Network Library

Description:

'The Torque Network Library is a robust, secure, easy to ... Compress data to the minimum space necessary. BitStream class is used to write standard data types ... – PowerPoint PPT presentation

Number of Views:21
Avg rating:3.0/5.0
Slides: 12
Provided by: ryanwe
Category:

less

Transcript and Presenter's Notes

Title: Torque Network Library


1
Torque Network Library
  • Presented by Ryan Wentzel

2
Overview
  • What is TNL?
  • Background
  • Limitations of Computer Networks
  • How Does TNL Address These Issues?
  • Resources

3
What is TNL?
  • The Torque Network Library is a robust, secure,
    easy to use, cross-platform C networking API
    designed for high performance simulations and
    games.

4
Background
  • Networking technology used in Tribes and Tribes
    2.
  • GarageGames released TNL as a stand-alone product
    in 2004 under GPL, independent developer, and
    commercial licenses.

5
Limitations of Computer Networks
  • Limited bandwidth There is a limit to the rate
    at which hosts on a network can send data to each
    other.
  • Packet loss - Data transmitted over a network can
    be lost or corrupted.
  • Latency (network lag) - It takes time for data
    sent by one host to another to arrive

6
How Does TNL Address These Issues?
  • Limited bandwidth
  • Send static data once, or not at all
  • Compress data to the minimum space necessary
  • BitStream class is used to write standard data
    types into a compressed packet.
  • Only send information that is relevant to the
    client
  • For example, objects outside of a clients
    visible distance arent relevant
  • TNL allows the programmer to specify which
    objects are relevant for each client

7
How Does TNL Address These Issues?
  • Limited bandwidth
  • Prioritize object updates
  • TNL allows the programmer to create policies for
    determining which objects are more or less
    important to a client
  • Objects with more importance are updated more
    frequently
  • Only update the parts of an object that have
    changed
  • If a client fires a weapon only the change in
    ammunition needs to be updated not the clients
    entire state

8
How Does TNL Address These Issues?
  • Packet Loss TNL implements various delivery
    policies
  • Guaranteed Ordered Data Data that would
    typically be sent using TCP
  • TNL uses Event objects and RPC method calls to
    send Guaranteed Ordered data.
  • Guaranteed Data Similar to Guaranteed Ordered
    data
  • A client can process data immediately upon
    arrival rather than waiting for ordered data that
    may have been dropped.

9
How Does TNL Address These Issues?
  • Packet loss - TNL implements various delivery
    policies
  • Unguaranteed Data Data that would typically be
    sent using UDP.
  • If the packet is dropped the data is not resent
  • Quickest Delivery Data For data that must
    arrive quickly.
  • The data is sent with each outgoing packet until
    the receiving host acknowledges receipt of it
  • Could be used for sending client movement data

10
How Does TNL Address These Issues?
  • Latency
  • Interpolation - used to smoothly move an object
    from where the client thinks it is to where the
    server declares it to be over some short period
    of time
  • Extrapolation Make a guess about an objects
    current state based on a known past state
  • Client-side prediction similar to extrapolation
    but uses input data from client
  • You dont need to wait for the server to tell you
    where you moved to

11
Resources
  • OpenTNL website - http//www.opentnl.org/
  • TNL Architectural Overview - http//opentnl.source
    forge.net/doxydocs/archoverview.html
  • Hello World example - http//opentnl.sourceforge
    .net/doxydocs/simpletutorial.html
Write a Comment
User Comments (0)
About PowerShow.com