Claims
- 1. A computer readable medium containing instructions that when executed cause a computer to:
receive a first message containing at least one of application code, control, data, and audio/visual data at a server in a service provider compatible protocol; translate the first message into a client device compatible protocol, that is different from the service provider compatible protocol; compress the first message at the server; and send the compressed first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection.
- 2. The medium of claim 1 further comprising instructions that cause the computer to:
send a uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; translate the uncompressed second message into the service provider compatible protocol; and send the translated uncompressed second message from the server to the service provider.
- 3. The medium of claim 2 further comprising instructions that cause the computer to:
prior to sending the first message to the client device,
encrypt the first message at the server and encapsulating the encrypted data into the client device compatible protocol message; and set a flag in the encrypted first message to indicate that the encrypted first message is encyrpted; send the encrypted first message to the client device; and decrypt the encrypted first message at the client device.
- 4. The medium of claim 3 further comprising instructions that cause the computer to:
individually encrypt at the server a fragment of the first message into the client device compatible protocol.
- 5. The medium of claim 1 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 6. The medium of claim 1 further comprising instructions that cause the computer to:
control message flow rate by controlling the bit rate of transmission.
- 7. A computer readable medium containing instructions that cause a computer to:
retrieve a client device hardware identifier for the client device from the client device dependant transport layer; store the client device hardware identifier in a network operator hardware identifier list; authenticate the client device hardware identifier before establishing a communication session between the server and the client device; receive a first message containing at least one of application code, control, data, and audio/visual data at a server in a service provider compatible protocol; translate the first message into a client device compatible protocol; send the first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection; send a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; receive the second message at the server; generate a session identifier from the client device hardware identifier; inserting the session identifier in place of the client device hardware identifier in the second message; translate the second message into the service provider compatible protocol; and send the translated message from the server to the service provider.
- 8. The medium of claim 7 further comprising instructions that cause the computer to:
determine whether to send the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 9. The medium of claim 7 further comprising instructions that cause the computer to:
store the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 10. The medium of claim 9 wherein the first message and second messsage comprise an ecommerce transaction.
- 11. The medium of claim 7 further comprising instructions that cause the computer to:
encapsulate HTTP in the device compatible protocol in the second message at the client device prior to sending the second messsage to the server; convert the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; receive a cookie from a service provider via a HTTP server at the server in response to the converted HTTP message; caching the cookie at the server; generate a cookie to session identifier translation table; use the cookie to session identifier table to answer a client device hardware identifier name request from the HTTP server; and use the client device hardware indentifer to extract user information from a central registry.
- 12. The medium of claim 11 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 13. The medium of claim 7 wherein the server sends a business filter to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 14. The medium of claim 7 further comprising instructions that cause the computer to:
complete an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 15. The medium of claim 7 further comprising instructions that cause the computer to:
send a third message to the client device requesting a quantity of memory available at the client device; and checking a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 16. The medium of claim 7 further comprising instructions that cause the computer to:
generate a sequence number in the first message at the server before sending the first message to the client device; store the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and reject the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 17. The medium of claim 7 further comprising instructions that cause the computer to:
resolve a request to a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 18. The medium of claim 7 further comprising instructions that cause the computer to:
provide a socket type abstraction layer to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 19. The medium of claim 7 further comprising instructions that cause the computer to:
authenticate multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 20. The medium of claim 7 further comprising instructions that cause the computer to:
control , in a business agent, access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 21. A computer readable medium containing instructions that when executed cause a computer to:
receive a first message from a server at a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at the server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 22. The medium of claim 21 further comprising instructions that cause the computer to:
send an uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 23. The medium of claim 22 wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to receipt of the first message at the client device, further comprising instruciton that cause the computer to:
decrypt the encrypted first message at the client device.
- 24. The medium of claim 23 wherein the first message has been divided in to fragments which have been individually encrypted at the server prior to receipt of the first message at the client device.
- 25. The medium of claim 21 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 26. The medium of claim 21 further comprising instructions that cause the computer to:
control message flow rate by controlling the transmission bit rate.
- 27. The medium of claim 21 further comprising instructions that cause the computer to:
retrieve a client device hardware identifier for the client device from the client device dependant transport layer; send the client device hardware indentifier to an identifier list for storage for authentication of the client device hardware identifier before establishing a communication session between the client device and a server; receive a first message containing at least one of application code, control, data, and audio/visual data at the client device from a server, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol; receive the first message at the client device over at least one of a broadcast carrier wave, local area network and point to point connnection; send a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 28. The medium of claim 27 further comprising instructions that cause the computer to:
determine whether to receive the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 29. The medium of claim 27 further comprising instructions that cause the computer to:
store the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 30. The medium of claim 29 wherein the first message and second messsage comprise an ecommerce transaction.
- 31. The medium of claim 27 further comprising instructions that cause the computer to:
encapsulate HTTP in the device compatible protocol in the second message at the client device prior to sending the second messsage to the server for converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; send the session identifer to the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 32. The medium of claim 31 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 33. The medium of claim 27 wherein the client device receives a business filter from the server to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 34. The medium of claim 27 further comprising instructions that cause the computer to:
completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 35. The medium of claim 27 further comprising instructions that cause the computer to:
receive a third message at the client device requesting a quantity of memory available at the client device; and check a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 36. The medium of claim 27 further comprising instructions that cause the computer to:
generate a sequence number in the first message at the server before sending the first message to the client device; store the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and reject the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 37. The medium of claim 27 further comprising instructions that cause the computer to:
resolve request to a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 38. The medium of claim 27 further comprising instructions that cause the computer to:
provide a socket type abstraction layer to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 39. The medium of claim 27 further comprising instructions that cause the computer to:
authenticate multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 40. The medium of claim 27 further comprising instructions that cause the computer to:
control, in a business agent, access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 41. A computer readable medium containing instructions that when executed cause a computer to:
send a first message from a server to a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at the server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 42. The medium of claim 41 further comprising instructions that cause the computer to:
receive an uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol from the client device for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 43. The medium of claim 42 wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to sending the first message to the client device for and decrypting of the encrypted first message at the client device.
- 44. The medium of claim 43 wherein the first message is divided in to fragments and each fragment individually encrypted at the server prior to sending the first message to the client device.
- 45. The medium of claim 41 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 46. The medium of claim 41 further comprising instructions that cause the computer to:
control message flow rate by controlling the transmission bit rate at the server.
- 47. A computer readable medium containing instructions that when executed cause a computer to:
send a client device hardware indentifier retrieved from the client device dependent transport layer, to a server identifier list for storage and authentication of the client device hardware identifier before establishing a communication session between the client device and a server; send a first message containing at least one of application code, control, data, and audio/visual data at the client device from the server over at least one of a broadcast carrier wave, local area network and point to point connnection, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol; receive a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 48. The medium of claim 47 further comprising instructions that cause the computer to:
determine whether to send the first message from the server to the client device over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 49. The medium of claim 47 further comprising instructions that cause the computer to:
store, at the server the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 50. The medium of claim 49 wherein the first message and second messsage comprise an ecommerce transaction.
- 51. The medium of claim 47 further comprising instructions that cause the computer to:
receive at the server, HTTP encapsulated in the device compatible protocol in the second message; convert the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; receive the session identifer at the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 52. The medium of claim 51 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 53. The medium of claim 47 further comprising instructions that cause the computer to:
send a business filter from the server to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 54. The medium of claim 47 further comprising instructions that cause the computer to:
complete an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 55. The medium of claim 47 further comprising instructions that cause the computer to:
send a third message to the client device requesting a quantity of memory available at the client device; and check a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 56. The medium of claim 47 further comprising instructions that cause the computer to:
generate a sequence number in the first message at the server before sending the first message to the client device for storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device for rejection of the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 57. The medium of claim 47 further comprising instructions that cause the computer to:
resolve a request to a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 58. The medium of claim 47 further comprising instructions that cause the computer to:
provide a socket type abstraction layer in the server to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 59. The medium of claim 47 further comprising instructions that cause the computer to:
uthenticate at the server, multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 60. The medium of claim 47 further comprising instructions that cause the computer to:
control, in a business agent in the server, access to client device user information in an ecommerce transaction between the service provider and the client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 61. A method for asymmetrical communication in an interactive television system comprising:
receiving a first message containing at least one of application code, control, data, and audio/visual data at a server in a service provider compatible protocol; translating the first message into a client device compatible protocol, that is different from the service provider compatible protocol; compressing the first message at the server; and sending the compressed first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection.
- 62. The method of claim 61 further comprising:
sending a uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; translating the uncompressed second message into the service provider compatible protocol; and sending the translated uncompressed second message from the server to the service provider.
- 63. The method of claim 62 further comprising:
prior to sending the first message to the client device,
encrypting the first message at the server and encapsulating the encrypted data into the client device compatible protocol message; and setting a flag in the encrypted first message to indicate that the encrypted first message is encyrpted; sending the encrypted first message to the client device; and decrypting the encrypted first message at the client device.
- 64. The method of claim 63 further comprising:
individually encrypting at the server a fragment of the first message into the client device compatible protocol.
- 65. The method of claim 61 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 66. The method of claim 61 further comrpising:
controlling message flow rate by controlling the bit rate of transmission.
- 67. A method for communication in a distributed computing system comprising:
retrieving a client device hardware identifier for the client device from the client device dependant transport layer; storing the client device hardware identifier in a network operator hardware identifier list; authenticating the client device hardware identifier before establishing a communication session between the server and the client device; receiving a first message containing at least one of application code, control, data, and audio/visual data at a server in a service provider compatible protocol; translating the first message into a client device compatible protocol; sending the first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection; sending a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; receiving the second message at the server; generating a session identifier from the client device hardware identifier; inserting the session identifier in place of the client device hardware identifier in the second message; translating the second message into the service provider compatible protocol; and sending the translated message from the server to the service provider.
- 68. The method of claim 67 further comprising:
determining whether to send the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 69. The method of claim 67 further comprising:
storing the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 70. The method of claim 69 wherein the first message and second messsage comprise an ecommerce transaction.
- 71. The method of claim 67 further comprising:
encapsulating HTTP in the device compatible protocol in the second message at the client device prior to sendint the second messsage to the server; converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; receiving a cookie from a service provider via a HTTP server at the server in response to the converted HTTP message; caching the cookie at the server; generating a cookie to session identifier translation table; using the cookie to session identifier table to answer a client device hardware identifier name request from the HTTP server; and using the client device hardware indentifer to extract user information from a central registry.
- 72. The methof claim 71 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 73. The method claim 67 wherein the the server sends a business filter to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 74. The method of claim 67 further comprising:
completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 75. The method of claim 67 further comprising:
sending a third message to the client device requesting a quantity of memory available at the client device; and checking a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 76. The method of claim 67 further comprising:
generating a sequence number in the first message at the server before sending the first message to the client device; storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and rejecting the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 77. The method of claim 67 further comprising:
a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 78. The method of claim 67 further comprising:
providing a socket type abstraction layer to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 79. The method of claim 67 further comprising:
authenticating multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 80. The method of claim 67 further comprising:
controlling, in a business agent, access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 81. A method for asymmetrical communication comprising:
receiving a first message from a server at a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at the server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 82. The method of claim 81 further comprising:
sending an uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 83. The method of claim 82 further comprising:
wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to receipt of the first message at the client device; and decrypting the encrypted first message at the client device.
- 84. The method of claim 83 further comprising:
wherein the first message has been divided in to fragments which have been individually encrypted at the server prior to receipt of the first message at the client device.
- 85. The method of claim 81 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 86. The method of claim 81 further comrpising:
controlling message flow rate by controlling the transmission bit rate.
- 87. A method for communication in a distributed computing system comprising:
retrieving a client device hardware identifier for the client device from the client device dependant transport layer; sending the client device hardware indentifier to an identifier list for storage for authentication of the client device hardware identifier before establishing a communication session between the client device and a server; receiving a first message containing at least one of application code, control, data, and audio/visual data at the client device from a server, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol; receiving the first message at the client device over at least one of a broadcast carrier wave, local area network and point to point connnection; sending a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 88. The method of claim 87 further comprising:
determining whether to receive the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 89. The method of claim 87 further comprising:
storing the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 90. The method of claim 89 wherein the first message and second messsage comprise an ecommerce transaction.
- 91. The method of claim 87 further comprising:
encapsulating HTTP in the device compatible protocol in the second message at the client device prior to sending the second messsage to the server for converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; sending the session identifer to the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 92. The methof claim 91 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 913. The method claim 87 further comprising:
wherein the client device receives a business filter from the server to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 94. The method of claim 87 further comprising:
completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 95. The method of claim 87 further comprising:
receiving a third message at the client device requesting a quantity of memory available at the client device; and checking a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 96. The method of claim 87 further comprising:
generating a sequence number in the first message at the server before sending the first message to the client device; storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and rejecting the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 97. The method of claim 87 further comprising:
a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 98. The method of claim 87 further comprising:
providing a socket type abstraction layer to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 99. The method of claim 87 further comprising:
authenticating multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 100. The method of claim 87 further comprising:
controlling, in a business agent, access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 101. A method for asymmetrical communication comprising:
sending a first message from a server to a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at the server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 102. The method of claim 101 further comprising:
receiving an uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol from the client device for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 103. The method of claim 102 further comprising:
wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to sending the first message to the client device for and decrypting of the encrypted first message at the client device.
- 104. The method of claim 103 further comprising:
wherein the first message is divided in to fragments and each fragment individually encrypted at the server prior to sending the first message to the client device.
- 105. The method of claim 101 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 106. The method of claim 101 further comrpising:
controlling message flow rate by controlling the transmission bit rate at the server.
- 107. A method for communication in a distributed computing system comprising:
sending a client device hardware indentifier retrieved from the client device dependent transport layer, to a server identifier list for storage and authentication of the client device hardware identifier before establishing a communication session between the client device and a server; sending a first message containing at least one of application code, control, data, and audio/visual data at the client device from the server over at least one of a broadcast carrier wave, local area network and point to point connnection, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol; receiving a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 108. The method of claim 107 further comprising:
determining whether to send the first message from the server to the client device over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 109. The method of claim 107 further comprising:
storing, at the server the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 110. The method of claim 109 wherein the first message and second messsage comprise an ecommerce transaction.
- 111. The method of claim 107 further comprising:
receiving at the server, HTTP encapsulated in the device compatible protocol in the second message; converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; receiving the session identifer at the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 112. The methof claim 111 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 113. The method claim 107 further comprising:
sending a business filter from the server to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 114. The method of claim 107 further comprising:
completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 115. The method of claim 107 further comprising:
sending a third message to the client device requesting a quantity of memory available at the client device; and checking a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 116. The method of claim 107 further comprising:
generating a sequence number in the first message at the server before sending the first message to the client device for storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device for rejection of the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 117. The method of claim 107 further comprising:
a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 118. The method of claim 107 further comprising:
providing a socket type abstraction layer in the server to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 119. The method of claim 107 further comprising:
authenticating at the server, multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 120. The method of claim 107 further comprising:
controlling, in a business agent in the server, access to client device user information in an ecommerce transaction between the service provider and the client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 121. An apparatus for asymmetrical communication in an interactive television system comprising:
a server for receiving a first message containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol; translating the first message into a client device compatible protocol, that is different from the service provider compatible protocol; a compressor for compressing the first message at the server; and a message transmission component for sending the compressed first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection.
- 122. The apparatus of claim 121 further comprising:
a communication link for sending a uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; a translater component for translating the uncompressed second message into the service provider compatible protocol; and a message transmission component for sending the translated uncompressed second message from the server to the service provider.
- 123. The apparatus of claim 122 further comprising:
an encryption component for, prior to sending the first message to the client device, encrypting the first message at the server and encapsulating the encrypted data into the client device compatible protocol message, setting a flag in the encrypted first message to indicate that the encrypted first message is encyrpted and sending the encrypted first message to the client device; and a decryption component for decrypting the encrypted first message at the client device.
- 124. The apparatus of claim 123 further comprising:
a fragment encyption component for individually encrypting at the server a fragment of the first message into the client device compatible protocol.
- 125. The apparatus of claim 121 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 126. The apparatus of claim 121 further comprising:
a message flow rate controller for controlling message flow rate by controlling the bit rate of transmission.
- 127. An apparatus for communication in a distributed computing system comprising:
a client device hardware identifier for the client device retrieved from the client device dependant transport layer; computer memory for storing the client device hardware identifier in a network operator hardware identifier list; a authentication component for authenticating the client device hardware identifier before establishing a communication session between the server and the client device; a server message handling component for receiving a first message containing at least one of application code, control, data, and audio/visual data at a server in a service provider compatible protocol and sending the first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection, the server message handling component further comprising translating a second message received from a client device into the service provider compatible protocol and sending the translated second message from the server to the service provider; a server translation component for translating the first message into a client device compatible protocol; a client device message handling component for sending the second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server; and a server component for generating a session identifier from the client device hardware identifier and inserting the session identifier in place of the client device hardware identifier in the second message prior to sending the second message to the service provider.
- 128. The apparatus of claim 127 further comprising:
a server component for determining whether to send the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 129. The apparatus of claim 127 further comprising:
computer memory for storing the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 130. The apparatus of claim 129 wherein the first message and second messsage comprise an ecommerce transaction.
- 131. The apparatus of claim 127 further comprising:
a client device component for encapsulating HTTP in the device compatible protocol in the second message at the client device prior to sending the second messsage to the server; a HTTP conversion component for converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; computer memory for caching a cookie received from a service provider via a HTTP server at the server in response to the converted HTTP message; a server component for generating a cookie to session identifier translation table and using the cookie to session identifier table to answer a client device hardware identifier name request from the HTTP server and using the client device hardware indentifer to extract user information from a central registry.
- 132. The apparatus of claim 131 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 133. The apparatus of claim 127 wherein the the server sends a business filter to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 134. The apparatus of claim 127 further comprising:
a server component for completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 135. The apparatus of claim 127 further comprising:
a third message sent to the client device requesting a quantity of memory available at the client device; and a component for checking a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 136. The apparatus of claim 127 further comprising:
a sequence number generated in the first message at the server before sending the first message to the client device; computer memory for storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and a rejection component for rejecting the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 137. The apparatus of claim 127 further comprising:
a data name service component for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 138. The apparatus of claim 127 further comprising:
a socket type abstraction layer component to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 139. The apparatus of claim 127 further comprising:
an authentication component for authenticating multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 140. The apparatus of claim 127 further comprising:
a business agent for controlling access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 141. An apparatus for asymmetrical communication in an interactive television system comprising:
a communication link for receiving a first message from a server at a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at the server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 142. The apparatus of claim 141 the further comprising:
a client message handler component sending an uncompressed second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 143. The apparatus of claim 142 wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to receipt of the first message at the client device; and
a decryption component for decrypting the encrypted first message at the client device.
- 144. The apparatus of claim 143 wherein the first message has been divided in to fragments which have been individually encrypted at the server prior to receipt of the first message at the client device.
- 145. The apparatus of claim 141 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 146. The apparatus of claim 141 further comrpising:
a message flow rate controller for controlling message flow rate by controlling the transmission bit rate.
- 147. An apparatus for communication in a distributed computing system comprising:
a first message containing at least one of application code, control, data, and audio/visual data at the client device from a server, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol and sent the first message to the client device over at least one of a broadcast carrier wave, local area network and point to point connnection; a client device hardware identifier for the client device retrieved from the client device dependant transport layer; a client device message handler for sending the client device hardware indentifier to an identifier list for storage for authentication of the client device hardware identifier before establishing a communication session between the client device and a server, and sending a second message containing at least one of application code, control, data, and audio/visual data from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 148. The apparatus of claim 147 further comprising:
a client component for determining whether to receive the first message over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 149. The apparatus of claim 147 further comprising:
computer memory for storing the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 150. The apparatus of claim 149 wherein the first message and second messsage comprise an ecommerce transaction.
- 151. The apparatus of claim 147 wherein the second message encapsulates HTTP in the device compatible protocol at the client device prior to sending the second messsage to the server for converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider;
a session identifier component for sending the session identifer to the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 152. The apparatus of claim 151 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 153. The apparatus claim 147 wherein the client device receives a business filter from the server to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 154. The apparatus of claim 147 further comprising:
a client component for completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 155. The apparatus of claim 147 further comprising:
a third message at the client device requesting a quantity of memory available at the client device; and a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 156. The apparatus of claim 147 further comprising:
a sequence number in the first message at the server before sending the first message to the client device; computer memory for storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device; and a rejection component for rejecting the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 157. The apparatus of claim 147 further comprising:
a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 158. The apparatus of claim 147 further comprising:
a socket type abstraction layer to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 159. The apparatus of claim 147 further comprising:
multiple users identifiers authenticated at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 160. The apparatus of claim 147 further comprising:
a business agent for controlling access to client device user information in an ecommerce transaction between a service provider and a client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
- 161. An apparatus for asymmetrical communication in an interactive television system comprising:
a first message from a server to a client device, containing at least one of application code, control, data, and audio/visual data in a service provider compatible protocol, wherein the first message has been compressed and translated into the client device compatible protocol at a server from the service provider compatible protocol, the client device compatible protocol being different from the service provider compatible protocol.
- 162. The apparatus of claim 161 further comprising:
an uncompressed second message containing at least one of application code, control, data, and audio/visual data sent from the client device in the client device compatible protocol to the server for translation of the uncompressed second message into the service provider compatible protocol for transmission to the service provider.
- 163. The apparatus of claim 162 wherein the first message is encrypted and encapsulated into the client device compatible protocol and a flag set in the first message indicating that the message is encrypted at the server prior to sending the first message to the client device for and decrypting of the encrypted first message at the client device.
- 164. The apparatus of claim 163 wherein the first message is divided into fragments and each fragment individually encrypted at the server prior to sending the first message to the client device.
- 165. The apparatus of claim 161 wherein the client device compatible protocol is compatible with a native transport layer in the client device.
- 166. The apparatus of claim 161 further comrpising:
a message flow rate controller for controlling message flow rate by controlling the transmission bit rate at the server.
- 167. An apparatus for communication in a distributed computing system comprising:
a client device hardware indentifier retrieved from the client device dependent transport layer, to a server identifier list for storage and authentication of the client device hardware identifier before establishing a communication session between the client device and a server; a first message sent from the server to the client device containing at least one of application code, control, data, and audio/visual data sent over at least one of a broadcast carrier wave, local area network and point to point connnection, wherein the server translated the message from a service provider compatible protocol into the client device compatible protocol; a second message containing at least one of application code, control, data, and audio/visual data received from the client device in the client device compatible protocol to the server for generating a session identifier from the client device hardware identifier, wherein the server inserts the session identifier in place of the client device hardware identifier in the second message and translates the second message into the service provider compatible protocol for sending the translated message to the service provider.
- 168. The apparatus of claim 167 further comprising:
a server routing component for determining whether to send the first message from the server to the client device over the broadcast carrier wave or the point to point connection based on broadcast carrier wave and point to point connection latency, broad cast stream and point to point connection loading conditions and message size.
- 169. The apparatus of claim 167 further comprising:
computer memory for storing at the server the second message for transmission upon satisfaction of a timing constraint comprising at a least one of as soon as possible, when connected, after a random period of time, after a set period of time, after the occurrence of an event, after occurrence of a message, and spread over available bandwidth.
- 170. The apparatus of claim 169 wherein the first message and second messsage comprise an ecommerce transaction.
- 171. The appartus of claim 167 further comprising
a converter for receiving the second message containing HTTP encapsulated in the device compatible protocol in the second message converting the second message into a standard HTTP communication protocol message at the server prior to sending the converted HTTP message to the service provider; a session identifer component for receiving the session identifer at the server for association with a cached cookie received from a service provider via a HTTP server in response to the converted HTTP message sent by the client device, wherein the cookie is identified in a cookie to session identifier translation table, wherein the cookie to session identifier table is used to answer a client device hardware identifier name request from the HTTP server and to extract user information from a central registry.
- 172. The apparatus of claim 171 wherein the first message comprises HTTP over TCP/IP and the second message comprises LHTTP over DATP.
- 173. The apparatus claim 167 further comprising:
a business filter from the server to the client device to select information to be captured from input to the client device based on at least one of client preferences, viewer profiles and transaction history.
- 174. The apparatus of claim 167 further comprising:
a server component for completing an ecommerce transaction between a user at the client device and the service provider when the client device is offline.
- 175. The apparatus of claim 167 further comprising:
a third message to the client device requesting a quantity of memory available at the client device; and a message size of a fourth message directed to the client device to verify that the quantity of available memory at the client device is sufficient to receive the fourth message before forwarding the fourth message to the client device.
- 176. The apparatus of claim 167 further comprising:
a sequence number in the first message at the server before sending the first message to the client device for storing the sequence number along with a time stamp in the client device upon receipt of the first message at the client device for rejection of the first message at the client device if the sequence number appears within a sliding time rejection window to avoid duplicate receipt of the first message.
- 177. The apparatus of claim 167 further comprising:
a data name service for resolving a service identifier identifying a service provider in a transport communication protocol message.
- 178. The apparatus of claim 167 further comprising:
a socket type abstraction layer in the server to accommodate User Datagram Protocol (UDP) data, wherein the socket type abstraction layer runs on top of UDP and encapsulates UDP into transport level protocol messages.
- 179. The apparatus of claim 167 further comprising:
an authentication component authenticating at the server, multiple users at the client device using nicknames, personal identifiers and the client device hardware identifier.
- 180. The apparatus of claim 167 further comprising:
a business agent in the server, for controlling access to client device user information in an ecommerce transaction between the service provider and the client device user, wherein the amount and type of client business information provided to the service provider is guided by a business rule depending on an agreement between the service provider and a network operator.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation in part of the USPTO patent application entitled “A Service Gateway for Interactive Television” filed on May 16, 2001, Ser. No. 09/858,436. This application claims priority from the USPTO provisional patent application entitled “A System for Adaptive Control of Access, Content and Scheduling For Interactive Television” filed on Feb. 2, 2001, serial No. 60/265,986 which is hereby incorporated herein by reference; USPTO provisional patent application entitled “A System for Adaptive Control of Access, Content and Scheduling For Interactive Television” filed on Feb. 2, 2001, serial No. 60/266,210 which is hereby incorporated herein by reference; USPTO provisional patent application entitled “A System for Adaptive Control of Access, Content and Scheduling For Interactive Television” filed on Feb. 9, 2001, serial No. 60/267,876 which is hereby incorporated herein by reference; and USPTO provisional patent application entitled “A System for Adaptive Control of Access, Content and Scheduling For Interactive Television” filed on Feb. 15, 2001, serial No. 60/269,261 which is hereby incorporated herein by reference; USPTO provisional patent application entitled “A System for Adaptive Control of Access, Content and Scheduling For Interactive Television” filed on Mar. 28, 2001, serial No. 60/279,543 which is hereby incorporated herein by reference. This application is also related to USPTO patent application entitled “A Digital Television Application Protocol for Interactive Television” filed on Feb. 1, 2002.
Provisional Applications (5)
|
Number |
Date |
Country |
|
60265986 |
Feb 2001 |
US |
|
60266210 |
Feb 2001 |
US |
|
60267876 |
Feb 2001 |
US |
|
60269261 |
Feb 2001 |
US |
|
60279543 |
Mar 2001 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09858436 |
May 2001 |
US |
Child |
10061114 |
Feb 2002 |
US |