Ex Parte Walkin et alDownload PDFPatent Trials and Appeals BoardOct 26, 201814821421 - (D) (P.T.A.B. Oct. 26, 2018) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE FIRST NAMED INVENTOR 14/821,421 08/07/2015 LevWalkin 148646 7590 10/30/2018 WOMBLE BOND DICKINSON (US) LLP/Satori Worldwide LL Attn: IP Docketing P.O. Box 7037 Atlanta, GA 30537-7037 UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www .uspto.gov ATTORNEY DOCKET NO. CONFIRMATION NO. Ml02103 1020US1 15003 1907 EXAMINER JAKOVAC,RYANJ ART UNIT PAPER NUMBER 2445 NOTIFICATION DATE DELIVERY MODE 10/30/2018 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): patents@mz.com IPDocketing@wbd-us.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte LEV W ALKIN and FRED RIK ERIK LINDER (Applicant: Satori Worldwide, LLC) Appeal 2018-002418 Application 14/821,421 1 Technology Center 2400 Before CARL W. WHITEHEAD JR., JON M. JURGOV AN, and PHILLIP A. BENNETT, Administrative Patent Judges. BENNETT, Administrative Patent Judge. DECISION ON APPEAL STATEMENT OF THE CASE Appellants appeal under 35 U.S.C. § 134(a) from the Examiner's final rejection of claims 1-3, 6, 8-10, 12, 14--16, 19, 21-23, 25, and 27-29. Claims 4, 5, 7, 11, 13, 17, 18, 20, 24, 26, and 30 have been cancelled. We have jurisdiction under 35 U.S.C. § 6(b ). We affirm. 1 Appellants identify Satori Worldwide, LLC as the real party in interest. Reply Br. 6. Appeal 2018-002418 Application 14/821,421 CLAIMED SUBJECT MATTER The claims are directed to a publish-subscribe ("PubSub") system that stores messages in a buffers with associated time-to-lives that allow new subscribers to receive messages that were published prior to the time of subscription. Spec. p. 1, 11. 4--22. The buffers are divided into a set of blocks which each store messages. Spec. 18, 11. 16-21. The blocks are assigned respective time-to-lives, and once the time-to-live of a block expires, the block and its messages are removed from the buffer. Spec. 18, 11. 16-21. Claim 1, reproduced below, is illustrative of the claimed subject matter: 1. A computer-implemented method comprising: receiving one or more commands to create a buffer for a channel, wherein the buffer has time-to-live and can store a plurality of messages; receiving the plurality of messages from a publishers, each of the messages being associated with the channel; storing the received messages in the buffer, the buffer comprising a plurality of blocks, each block having a respective time-to-live and wherein the block stores one or more of the received messages; after storing the received messages: removing one or more of the blocks having respective time-to-lives that have expired; and providing messages for the channels to one or more subscribers from one or more unremoved blocks, wherein the provided messages persist in the unremoved blocks until respective time-to-lives of the unremoved blocks expire. App. Br. 14 (Claims Appendix). 2 Appeal 2018-002418 Application 14/821,421 REFERENCES The prior art relied upon by the Examiner in rejecting the claims on appeal is: Bevan US 2007/0013948 Al Jan. 18, 2007 Lauder US2007/0028I73A1 Feb.1,2007 Telfer US 2008/0235366 Al Sep. 25, 2008 Mayo US 2011/0179162 Al Jul. 21, 2011 Haugland US 2011/0231523 Al Sep. 22, 2011 NAMPALLY US 2015/0207851 Al Jul. 23, 2015 Google Cloud Platform, "What is Google Cloud Pub/Sub?" located at https://cloud.google.com/pubsub/overview, August 7, 2015 with indication of most recent update July 14, 2015. REJECTIONS Claims 1, 3, 9, 10, 12, 14, 16, 22, 23, 25, 27, and 29 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Lauder, Telfer, Google Cloud Platform, Mayo, and Haugland. Final Act. 3---6. Claims 2, 15, and 28 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Lauder, Google Cloud Platform, Mayo, Haugland, and Bevan. Final Act. 7. Claims 6 and 19 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Lauder, Google Cloud Platform, Mayo, Haugland, and Nampally. Final Act. 8. Claims 8 and 21 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Lauder, Google Cloud Platform, Mayo, Haugland, and Applicant Admitted Prior Art ("AP A"). Final Act. 9. 3 Appeal 2018-002418 Application 14/821,421 ISSUES First Issue: Has the Examiner erred in finding Telfer and Mayo teach or suggest "storing the received messages in the buffer, the buffer comprising a plurality of blocks, each block having a respective time-to-live and wherein the block stores one or more of the received messages," as recited in claim 1? Second Issue: Has the Examiner erred in finding Telfer teaches or suggests "removing one or more of the blocks having respective time-to- lives that have expired," as recited in claim 1? Third Issue: Has the Examiner erred in finding Haugland teaches or suggests "wherein the provided messages persist in the unremoved blocks until respective time-to-lives of the unremoved blocks expire," as recited in claim 1? Fourth Issue: Has the Examiner erred in relying on Appellants' Specification as Admitted Prior Art in concluding claim 8 is obvious? ANALYSIS First Issue Independent claim 1 recites the limitation "storing the received messages in the buffer, the buffer comprising a plurality of blocks, each block having a respective time-to-live and wherein the block stores one or more of the received messages." App. Br. 14 (Claims Appendix). In rejecting claim 1 as unpatentable, the Examiner finds this limitation present in the combined teachings of Telfer and Mayo. More specifically, the Examiner finds Mayo teaches "storing the received messages in the buffer, the buffer comprising a plurality of blocks," and Telfer teaches "each block 4 Appeal 2018-002418 Application 14/821,421 having a respective time-to-live," and relies again on Mayo for teaching "wherein the block stores one or more of the received messages." Final Act. 4 (citing Mayo ,r 93 and Telfer ,r 40). Appellants contend the Examiner's findings are in error, and they offer several arguments in support. First, Appellants argue that Telfer fails to teach "the buffer comprising a plurality of blocks." App. Br. 5. In particular, Appellants argue Telfer teaches only that messages are stored within a buffer, but those messages are not contained within blocks as required by the claim. Id. According to Appellants, "the 'messages' in Telfer cannot be 'blocks' as recited in claim 1 at least because they do not store one or more received messages as recited in the claim, but rather are the messages themselves." Reply Br. 2. Appellants further contend that "even if messages as described in Telfer could be interpreted as buffer blocks ... they still do not teach or suggest blocks 'having a respective time- to-live' as recited [in claim 1 ]." Reply Br. 2. We are not persuaded by Appellants' arguments. Mayo demonstrates that it was known in messaging systems to store messages in queues. We agree with the Examiner that storing messages in queues as taught by Mayo teaches storing messages in the recited "blocks" because queues are portions of memory having discrete size. See Mayo ,r 93. Appellants' Specification does not provide a definition of "blocks." The examples of "blocks" in the Specification include allocations of memory space (Spec. 19, 11. 24--26), channel positions (Spec. 19, 11. 8-11 ), or a number of messages (Spec. 18, 11.17-18). The message queues described by Mayo are encompassed by these broad examples. Telfer teaches the use of message data buffers that "contain information regarding the messages that make up a transaction." 5 Appeal 2018-002418 Application 14/821,421 Telfer ,r 40. Telfer further teaches that messages may be assigned a time-to- live value. Telfer ,r 40 ("In particular, transaction buffers 150, 151, 152 contain information regarding the transaction itself and about the handling of messages for the transaction (e.g., lifetime, priority, etc.)."). We agree with the Examiner that, taken together, the combined teachings of Telfer and Mayo would have at least suggested to a person of ordinary skill in the art that it would be beneficial to add the message queues of Mayo to the message data buffers taught by Telfer. Appellants argue "the 'messages' in Telfer cannot be 'blocks' as recited in claim 1 at least because they do not store one or more received messages as recited in the claim, but rather are the messages themselves." Reply Br. 2. But the Examiner does not rely solely on Telfer for disclosure of the recited "blocks." Rather, the Examiner finds the message queues taught by Mayo correspond to the claimed "blocks." Accordingly, this argument is not persuasive of error. Appellants also argue "even if messages as described in Telfer could be interpreted as buffer blocks ... they still do not teach or suggest blocks 'having a respective time-to-live."' This argument also is unpersuasive for two reasons. First, as we explained above, Telfer teaches assigning lifetimes to respective messages. Telfer ,r 40 ("the handling of messages for the transaction (e.g., lifetime, priority, etc.)"). Second, it does not address the rejection made by the Examiner-that Mayo supplies a teaching of the recited "blocks" which include messages and Telfer teaches assigning time-to-lives to data to a substructure of the buffer. Accordingly, we are not persuaded the Examiner erred in finding Telfer and Mayo at least suggest "storing the received messages in the buffer, the buffer 6 Appeal 2018-002418 Application 14/821,421 comprising a plurality of blocks, each block having a respective time-to-live and wherein the block stores one or more of the received messages." Second Issue In rejecting claim 1, the Examiner also relies on Telfer for the limitation "removing one or more of the blocks having respective time-to- lives that have expired." Final Act. 4 (citing Telfer ,r 40); Ans. 5. The Examiner finds that "Telfer removes the buffers which contain[] the blocks when the buffer's lifetime expires." Ans. 5. The Examiner reasons that when the time-to-live of the buffer expires, the time-to-live of the blocks within the buffer also expires. As a result, the Examiner concludes, "through the normal and usual operation of the system, Telfer teaches [ the disputed limitation] via the removal of the expired buffers containing the expired blocks." Id. Appellants argue Telfer does not disclose this limitation because it "merely describes removing a 'buffer' without any teaching or suggestion of removing a block within a buffer based on a 'time-to-live' of the block." App. Br. 9. This argument is substantially the same as the argument we addressed above in connection with the first issue. That is, we agree with the Examiner that Telfer's messages are assigned a time-to-live, and Telfer at least suggests removing the expired messages from the message data buffers when their time-to-lives have expired. See Final Act. 4. Accordingly, we are not persuaded by Appellants argument. Third Issue Claim 1 also recites the limitation "wherein the provided messages persist in unremoved blocks until respective time-to-lives of the unremoved 7 Appeal 2018-002418 Application 14/821,421 blocks expire." App. Br. 14 (Claims Appendix). The Examiner finds this limitation taught by Haugland. Final Act. 5; Adv. Action 2 ("Haughland clearly teaches these features in at least 117 which shows that messages (in 'blocks') persist until the TTL expires at which point they are removed."). The Examiner explains that the term "block" in reasonably interpreted to mean data existing in a discrete unit. Ans. 6. Based on that interpretation, the DNS [domain name servers] records in Haugland are blocks, and Haugland fields within those records are messages that persist until they expire and are removed. Ans. 6. Appellants argue Haugland is deficient because it relates to domain name servers and merely teaches removing a name-to-IP address mapping in a DNS cache at the expiration of the mapping entry's TTL parameter. App. Br. 9-10. According to Appellants, because Haugland does not teach buffers having blocks as a substructure to store messages, it cannot render obvious "wherein the provided messages persist in unremoved blocks until respective time-to-lives of the unremoved blocks expire." App. Br. 10. We are not persuaded by Appellants' argument. Appellants argue that Haugland does not disclose buffers having blocks as a substructure. However, the Examiner does not rely on Haugland for disclosing buffers having blocks as substructure. Rather, the Examiner relies on Telfer to show the buffer/block structure as we discussed above. The Examiner relies on Haugland only to show that it was known for messages to persist as discrete data units (i.e., as blocks) until the TTL expires. See, e.g. Haugland ,r 117 ("The time to live (TTL) parameter affects the way domain name servers cache messages received from foreign name servers."); Ans. 6. Thus, 8 Appeal 2018-002418 Application 14/821,421 Appellants' argument does not squarely address the rejection made by the Examiner, and it is not persuasive of error. Fourth Issue Appellants present a separate argument for claim 8. Claim 8 depends from claim 1 and recites "wherein providing messages for the channel to one or more subscribers occurs after a predetermined time period." App. Br. 15 (Claims Appendix). The Examiner rejects claim 8 as being obvious over Appellants' admitted prior art ("AP A") because the Specification describes that Nagle's algorithm is a well-known acknowledgement scheduling algorithm that may be used to send messages after a predetermined time period. Final Act. 9 ( citing Spec. 16, 11. 17-20). The Examiner finds that a person of ordinary skill in the art would have found it obvious to implement Nagle's algorithm, as taught by Appellants' Specification because it is "well-known and advantageous method[] of improving network efficiency." Ans. 7. Appellants argue the Examiner's reliance on AP A is misplaced because the Specification provides no indication that it would have been obvious to combine the AP A with the other cited references, and that the Examiner relies on impermissible hindsight in doing so. App. Br. 12. Appellants also argue the mere reference to Nagle's algorithm in the Specification is not an admission that "providing messages for the channel to one or more subscribers occurs after a predetermined time period" was known in the prior art. Reply Br. 5. Appellants contend "Nagle's algorithm [ ] deals with acknowledgement of packets through a network and does not deal with delivery of messages for a channel to subscribers of the channel." Id. 9 Appeal 2018-002418 Application 14/821,421 We are not persuaded by Appellants' argument. The limitation of claim 8 essentially covers scheduling the publication of messages. The cited portion of the Specification relied upon as AP A teaches that known acknowledgement scheduling algorithms such as Nagle algorithm can be used to "send the channel foo's messages (from the streamlet 4102) to the MX node 461 ... every 50 milliseconds." Spec. 16, 11. 17-19. This description teaches the recited "providing messages for the channel to one or more subscribers occurs after a predetermined time period" because it describes that channel foo's messages (i.e., the "messages for the channel") are sent to the MX node (i.e., "to one or more subscribers") every 50 milliseconds ("after a predetermined time period"). Thus, because claim 8 is simply an embodiment where the publication of message is scheduled, and the Specification indicates that scheduling algorithms such as Nagle's algorithm were well-known, we agree with the Examiner that it would have been obvious to implement scheduling as recited in claim 8 utilizing Nagle's algorithm. Accordingly we sustain the rejection of claim 8 under 35 U.S.C. § 103(a). Summary Appellants have not persuaded us the Examiner erred in concluding claim 1 would have been obvious. Accordingly, we sustain the rejection of claim 1 under 35 U.S.C. § 103(a). Nor are we persuaded the Examiner erred in relying on APA in rejecting claim 8. Accordingly, we also sustain the rejection of claim 8. Appellants offer no separate arguments for patentability for any other claim. Accordingly, we treat claim 1 as representative of the remaining claims, and we sustain their rejections for the same reasons. 10 Appeal 2018-002418 Application 14/821,421 DECISION We affirm the Examiner's rejection of claims 1-3, 6, 8-10, 12, 14--16, 19, 21-23, 25, and 27-29. No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a). See 37 C.F.R. § 1.136(a)(l )(iv). AFFIRMED 11 Copy with citationCopy as parenthetical citation