Upload
melinda-hunter
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
BOB Tech DemoBOB Tech Demo
2003 G2E – Las Vegas
AgendaAgenda
Best of Breed – a layering of standards
Standards, messaging, protocols and why you care
From the bottom up - the slot floor topology of BoB explained
Messaging for the Casino Gaming industry XML– the good stuff
What do you see in front of you?
Real, working hardware demonstration
You question, we’ll answer
Physical andData Link
Network
Transport
Application
User
SSL DNS DHCP
LDAP NTP
TCP HTTP SOAP UDP
IP
LAN Ethernet
XML BoB
BoB Protocol Layers (stack)BoB Protocol Layers (stack)
GSA’s contribution
Protocol GlossaryProtocol Glossary
Protocol Usage and Benefits to BoB
DHCP Dynamic Host Configuration Protocol
Automatic network admission and IP Address assignment for gaming machines and host systems.
LDAP Lightweight Directory Access Protocol
Automatic configuration of gaming machines and host systems. Automatic notifications of configuration updates. Can store arbitrary binary objects including images, software updates, etc. Provides a secure access control mechanism to allow only authorized users to gain access to the portions of the LDAP directory they are allowed to access.
NTP Network Time Protocol
Automatic synchronization of time across all gaming machines and host systems in a gaming network.
SOAP/HTTP/TCP Simple Object Access Protocol/Hypertext Transfer Protocol/Transmission Control Protocol
Transport layer protocols to carry point-to-point ordered and reliable BoB XML messages between gaming machines and host systems.
XML Extensible Markup Language
All messages between gaming machines and host systems are encoded in XML. XML allows a flexible and extensible method of encoding data.
XML Schema The BoB protocol defines a set of XML schema. A schema is a blueprint for what an XML document can contain.
SSL Secure Sockets Layer
All messages between gaming machines and host systems are secured using SSL. SSL is used to authenticate both ends of a communication session and to encrypt all traffic flowing on that session.
Why XML?Why XML?
BoB strategy is to use “Off the Shelf” standards from computer industry Reduces engineering costs – training, etc Proprietary solutions are more difficult to implement and incompatible on the
casino floor Enables manufacturers to deliver products more quickly and focus on value
added game content
XML is a language useful for defining data exchange XML is a rich language for expressing data structures and defining the
interface (schema) Easily extensible to ensure backwards compatibility
Implementing Products with XML Rapid development environment Numerous tools support XML including most major browsers Integrates well with HTML and other Web standards Human readable and understandable protocol traces Allows automatic data validation against schema for development and
debugging
Sample BoB Message ExchangesSample BoB Message Exchanges
GameMachine
2) BOB_MSG(GM_ID, Meters, games_played)
3) BOB_MSG_RESPONSE(SUCCESS)
BOB Meter ChangedEvent Notification
BoB Server(Accounting)
1) Player initiates game
GameMachine
1) BOB_MSG(GM_ID, getMeters,AllRevenueMeters)
2) BOB_MSG_RESPONSE(GM_ID,Meters, AllRevenueMeters)
BOB Meter Poll
BoB Server(Accounting)
Top SchemaTop Schema
Header SchemaHeader Schema
Body SchemaBody Schema
Meter SchemaMeter Schema
Example XML DocumentExample XML Document
<?xml version="1.0" encoding="UTF-8" ?> -
<bobMessage>
<bobHeader>
<messageType>response</messageType>
<messageId>87654321</messageId>
<messageDate>2003-07-21</messageDate>
<messageTime>14:20:0005:00</messageTime>
<commandClass>meters</commandClass>
<commandCode>meterInfo</commandCode>
</bobHeader>-
<bobBody errorCode="MS00" errorText="Command Successful.">-
<meters machine="12345" device="1">-
<meterInfo>
<performanceMeter name="coinIn" denom="01" rollover="100000000">500000</performanceMeter>
<performanceMeter name="coinIn" denom="02" rollover="100000000">400000</performanceMeter>
<performanceMeter name="coinIn" denom="03" rollover="100000000">300000</performanceMeter>
<performanceMeter name="coinIn" denom="04" rollover="100000000">200000</performanceMeter>
</meterInfo>
</meters>
</bobBody>
</bobMessage>
GSA – Best of BreedGSA – Best of Breed
Back Office
Systems
Bally Systems
Atronic
Foxwoods
BOB Messaging
Gaming Machines
BoB - Floor TopologyBoB - Floor Topology
Slot Accounting Player Tracking Cashless
Ethernet
DHCP ServerLDAP ServerBonusing
Casino Floor
Secured
Back Office Systems Services
BoB - Network ArchitectureBoB - Network Architecture
EthernetEthernet
Ethernet
BoB Server(Player Tracking)
NTP Server(Network Time
Synchronization)
DHCP Server(Automatic Network
Administration)
LDAP Server(Provisioning/Configuration)
Hub/Switch
Router or L3/L2 Switch
Hub/Switch Hub/Switch
GM1 GM2 GM3 GM4 GM5 GM6 GM7 GM8
Back Office
Gaming Floor
Wiring Closet
Wiring Closet
Wiring ClosetWiring Closet
BoB Server(Accounting,
Event Reporting)
DNS Server(Network Name
Resolution)
BoB – Gaming Machine Bootstrap ProcessBoB – Gaming Machine Bootstrap ProcessGame
MachineDHCP Server LDAP Server
1) DHCP DISCOVER(GM_ID)
4) DHCP OFFER(GM_IP,LDAP_SERVER_IP,NTP_SERVER_IP)
BOB Gaming MachineBootstrap Sequence
2) SEARCH_REQUEST(GM_ID)
3) SEARCH_RESPONSE(SUCCESS)
5) DHCP REQUEST(GM_IP)6) SEARCH_REQUEST(GM_ID)
7) SEARCH_RESPONSE(SUCCESS)8) DHCP ACK(GM_IP)
11) BIND_REQUEST(GM_ID)
NTP Server
12) BIND_RESPONSE(SUCCESS)
9) NTP_READ()
10) NTP_READ_RESPONSE()
13) SEARCH_REQUEST(GM_ID)
14) SEARCH_RESPONSE(SUCCESS)
Live DemoLive Demo
GameMachine
2) BOB_MSG(GM_ID, Meters, games_played)
3) BOB_MSG_RESPONSE(SUCCESS)
BoB Meter ChangedEvent Notification
BoB Server(Accounting)
1) player initiates game
Q & AQ & A
2003 G2E – Las Vegas