Transcript Slide 1
BOB Tech Demo 2003 G2E – Las Vegas Agenda 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 BoB Protocol Layers (stack) User XML SSL GSA’s contribution BoB DNS DHCP Application LDAP Transport TCP Network Physical and Data Link NTP HTTP SOAP IP LAN Ethernet UDP Protocol Glossary Protocol DHCP Usage and Benefits to BoB 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? 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 Exchanges Game Machine 1) Player initiates game BoB Server (Accounting) 2) BOB_MSG(GM_ID, Meters, games_played) 3) BOB_MSG_RESPONSE(SUCCESS) BoB Server (Accounting) BOB Meter Changed Event Notification Game Machine 1) BOB_MSG(GM_ID, getMeters, AllRevenueMeters) 2) BOB_MSG_RESPONSE(GM_ID, Meters, AllRevenueMeters) BOB Meter Poll Top Schema Header Schema Body Schema Meter Schema Example 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 Breed Gaming Machines Back Office Systems Atronic Bally Systems Foxwoods BOB Messaging BoB - Floor Topology Back Office Systems Services Slot Accounting Player Tracking Cashless Bonusing LDAP Server DHCP Server Secured Ethernet Casino Floor BoB - Network Architecture BoB – Gaming Machine Bootstrap Process Game Machine DHCP Server LDAP Server 1) DHCP DISCOVER(GM_ID) 2) SEARCH_REQUEST(GM_ID) 4) DHCP OFFER(GM_IP, LDAP_SERVER_IP, NTP_SERVER_IP) 3) SEARCH_RESPONSE(SUCCESS) 5) DHCP REQUEST(GM_IP) 6) SEARCH_REQUEST(GM_ID) 7) SEARCH_RESPONSE(SUCCESS) 8) DHCP ACK(GM_IP) 9) NTP_READ() 10) NTP_READ_RESPONSE() 11) BIND_REQUEST(GM_ID) 12) BIND_RESPONSE(SUCCESS) 13) SEARCH_REQUEST(GM_ID) 14) SEARCH_RESPONSE(SUCCESS) BOB Gaming Machine Bootstrap Sequence NTP Server Live Demo Game Machine 1) player initiates game BoB Server (Accounting) 2) BOB_MSG(GM_ID, Meters, games_played) 3) BOB_MSG_RESPONSE(SUCCESS) BoB Meter Changed Event Notification Q&A 2003 G2E – Las Vegas