DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Arguments
Specification Objection:
Applicants’ amendments to the specification filed 01/12/2026 has been entered and the previous specification objection is withdrawn as the amendments overcome the identified issue.
35 U.S.C. 112(b):
Applicants’ amendments to the claims have overcome the previously presented rejection under 35 U.S.C. 112(b). The previous 35 U.S.C. 112(b) rejection is withdrawn.
35 U.S.C. 112(f):
Applicants’ remarks have been carefully considered. The examiner agrees with applicants that the claimed “means for” are supported with corresponding structure from the specification. These “means for” have been read and interpreted in light of the specification as being drawn to the various modules/components and their respective processes as described.
35 U.S.C. 101:
Applicants’ amendments to the claims have overcome the previously presented rejection under 35 U.S.C. 101. The previous 35 U.S.C. 101 rejection is withdrawn.
Applicant’s arguments, see response, filed 01/12/2026, with respect to the rejection(s) of claim(s) 1-3, 6, 9-11, 14, 17-19, 22, and 25 under 35 U.S.C. 102(a)(2) have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made under 35 U.S.C. 103 over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1).
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claim(s) 1-3, 6, 9-11, 14, 17-19, 22, and 25 are rejected under 35 U.S.C. 103 as being unpatentable over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1).
Claim 1:
Zilbershtein et al. disclose a method for,
delivering a configuration file or firmware update to a Customer Premises Equipment (CPE) device from a Hypertext Transfer Protocol (HTTPS) service on a backend server comprising,
(“…An aspect of some embodiments of the present invention relates to facilitating download of a content item from a server using a relatively high parallelity communication protocol to a network device that employs a lower parallelity protocol. Optionally, the content item is a software update…”) [Zilbershtein et al. para 15]; (“…In an exemplary embodiment of the invention, a facilitating gateway is installed between LAN devices employing a low parallelity protocol and a WAN server capable of communication in a higher parallelity protocol…”) [Zilbershtein et al. para 18]; (“…TFTP/UDP/IP is an example of a low parallelity protocol. HTTP/TCP/IP; FTP/TCP/IP, SFTP/TCP/IP and HTTPS/TCP/IP are examples of high parallelity protocols…”) [Zilbershtein et al. para 20]; (“…In an exemplary embodiment of the invention, there is provided a method for bidirectional gating between low parallelity devices in a network and a remote server with a higher parallelity…”) [Zilbershtein et al. para 25]
Examiner notes: A Customer Premises Equipment (CPE) device may form or participate in a Local Area Network (LAN) that operates using a low parallelity protocol, while a Hypertext Transfer Protocol (HTTPS) represents an example of a high parallelity protocol. In such a system, a backend server, whether remote or local, can facilitate software updates, which may include configuration files or firmware updates to the CPE device.
receiving a Trivial File Transfer Protocol (TFTP) request from the CPE device in a TFTP-to-HTTPS proxy service, the TFTP request comprising a request for a configuration file or a firmware update
(“…(a) intercepting a plurality of requests for a same content item stored on a remote server from a plurality of devices, said requests in a low parallelity protocol…”) [Zilbershtein et al. para 27]; (“…In some embodiments of the invention, each device 150 makes a request for upgrade. Optionally, devices 150 are programmed to check for available software upgrades during start up...”) [Zilbershtein et al. para 137];
translating the TFTP request into an HTTPS request in the TFTP-to-HTTPS proxy service
(“…Optionally, said translating includes translation from a TFTP/UDP/IP protocol to an HTTPS/TCP/IP protocol…”) [Zilbershtein et al. para 34]
sending the HTTPS request from the TFTP-to-HTTPS proxy service to the backend server via the...communication link...
(“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]
receiving in the TFTP-to-HTTPS proxy service from the backend server an HTTPS response that includes the requested configuration file or firmware update
(“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…An aspect of some embodiments of the present invention relates to facilitating download of a content item from a server using a relatively high parallelity communication protocol to a network device that employs a lower parallelity protocol. Optionally, the content item is a software update…”) [Zilbershtein et al. para 15]
translating the HTTPS response into a TFTP response in the TFTP-to-HTTPS proxy service;
(“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]
and sending TFTP data packets from the TFTP-to-HTTPS proxy service to the CPE device
(“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al. do not disclose,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
However, Girbal teaches,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
(“...the proxy server 240 has any number of consistent, pre-established, and pre-authenticated proxy/back-end TCP connections 260 with the back-end server 270...”) [Girbal para 34];
While, Finkelstein teaches,
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
(“...the request may be formatted in accordance with a meta-language such as XML, YANG, a DOCSIS configuration file, or the like... device proxy, however, may in certain example embodiments, translate the request to a device-specific format prior to communicating the request to an associated physical device...”) [Finkelstein para 70];
Therefore, it would have been obvious to one of ordinary skill in the art at the time of applicants' filed invention to incorporate the teachings of Girbal and Finkelstein into that of Zilbershtein et al. in order to not require separate establishment of authenticated TCP connections for every request and for the receiving device to be able to handle the request in a format it has capabilities for handling. Zilbershtein et al. teaches the utilization of HTTPS connections between the proxy and backend which would benefit from the advantages offered by Girbal that has pre-authenticated connections between the proxy and backend, thereby reducing the amount of separate requests required saving resources especially the given nature of higher overhead with secured connections. Zilbershtein et al. teaches translation of protocols from TFTP to HTTPS and vice versa, but does not go into detail regarding the specifics of the exact file formats utilized. Finkelstein teaches an example of such a conversion that would occur as part of the translation process handled by the proxy, where the metalanguage may be formatted to fit the respective receiving device’s capabilities, such as DOCSIS for the configuration file. Both Girbal and Finkelstein lend their teachings to further extend the teachings of Zilbershtein et al. without altering the principle of operation of Zilbershtein et al.. The three prior art also deal with proxy operations that handle requests between two communicating sides across the proxy.
Claim 2:
The method of claim 1, further comprising,
segmenting the HTTPS response into TFTP data packets
(“…division of one or more packets of the HTTP response from the server 110, into blocks of a size suitable for the TFTP environment of LAN 170…”, “…SPA 220 divides the response into TFTP blocks…”) [Zilbershtein et al. para 128]
and establishing a TFTP data transfer session with the CPE device before sending the TFTP data packets from the TFTP-to-HTTPS proxy service to the CPE device.
(“…file name is found on first read/write TFTP packet. The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”, “…in order to know which file is transferred and on which session…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that a TFTP data transfer session is established and identified before the file transfer occurs, thereby corresponding to the claim limitation.
Claim 3:
The method of claim 1, wherein receiving the TFTP request from the CPE device comprises
receiving the TFTP request on a User Datagram Protocol (UDP) port of the TFTP-to-HTTPS proxy service.
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that the TFTP request is received on a UDP port of the proxy service, where the session is identified using the UDP port information.
Claim 6:
The method of claim 1, further comprising,
loading configuration settings into the TFTP-to-HTTPS proxy service, the configuration settings comprising one or more of backend server universal resource locators (URLs), caching settings, or authentication schemas
(“…According to some embodiments of the invention, the gateway handles transforms non-secure requests to secure requests. Optionally, this involves configuration of credentials on the gateway…”) [Zilbershtein et al. para 21]
Examiner notes: This teaching corresponds to loading configuration settings into the proxy service, where the configuration of credentials represents authentication schemas.
Claim 9:
A computing device comprising:
a memory;
a network interface; and
a processing system coupled to the memory and the network interface and configured with processor-executable instructions to perform operations of a Trivial File Transfer Protocol (TFTP) to Hypertext Transfer Protocol Secure (HTTPS) proxy service (“…FIG. 1 illustrates alternate installation configurations for a computerized gating device facilitating content transfer between prior art LAN devices and a prior art WAN server according to some exemplary embodiments of the present invention…”) [Zilbershtein et al. para 87]; (“…The present invention relies upon execution of various commands and analysis and translation of various data inputs. Any of these commands, analyses or translations may be accomplished by software, hardware or firmware according to various embodiments of the invention. In an exemplary embodiment of the invention, machine readable media contain instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache. In an exemplary embodiment of the invention, a CPU executes instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache…”) [Zilbershtein et al. para 181]; (“…In an exemplary embodiment of the invention, the gateway also includes a local network cache so that some requests may be processed locally, without being relayed to remote server 110…”) [Zilbershtein et al. para 106] comprising,
receiving a Trivial File Transfer Protocol (TFTP) request from the Customer Premises Equipment (CPE) device, the TFTP request comprising a request for a configuration file or a firmware update
(“…(a) intercepting a plurality of requests for a same content item stored on a remote server from a plurality of devices, said requests in a low parallelity protocol…”) [Zilbershtein et al. para 27]; (“…In some embodiments of the invention, each device 150 makes a request for upgrade. Optionally, devices 150 are programmed to check for available software upgrades during start up...”) [Zilbershtein et al. para 137];
translating the TFTP request into an HTTPS request
(“…Optionally, said translating includes translation from a TFTP/UDP/IP protocol to an HTTPS/TCP/IP protocol…”) [Zilbershtein et al. para 34]
sending the HTTPS request to the backend server via the...communication link...
(“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]
receiving from the backend server an HTTPS response that includes the requested configuration file or firmware update
(“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…An aspect of some embodiments of the present invention relates to facilitating download of a content item from a server using a relatively high parallelity communication protocol to a network device that employs a lower parallelity protocol. Optionally, the content item is a software update…”) [Zilbershtein et al. para 15]
translating the HTTPS response into a TFTP response
(“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]
and sending TFTP data packets to the CPE device
(“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al. do not disclose,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
However, Girbal teaches,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
(“...the proxy server 240 has any number of consistent, pre-established, and pre-authenticated proxy/back-end TCP connections 260 with the back-end server 270...”) [Girbal para 34];
While, Finkelstein teaches,
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
(“...the request may be formatted in accordance with a meta-language such as XML, YANG, a DOCSIS configuration file, or the like... device proxy, however, may in certain example embodiments, translate the request to a device-specific format prior to communicating the request to an associated physical device...”) [Finkelstein para 70];
Therefore, it would have been obvious to one of ordinary skill in the art at the time of applicants' filed invention to incorporate the teachings of Girbal and Finkelstein into that of Zilbershtein et al. in order to not require separate establishment of authenticated TCP connections for every request and for the receiving device to be able to handle the request in a format it has capabilities for handling. Zilbershtein et al. teaches the utilization of HTTPS connections between the proxy and backend which would benefit from the advantages offered by Girbal that has pre-authenticated connections between the proxy and backend, thereby reducing the amount of separate requests required saving resources especially the given nature of higher overhead with secured connections. Zilbershtein et al. teaches translation of protocols from TFTP to HTTPS and vice versa, but does not go into detail regarding the specifics of the exact file formats utilized. Finkelstein teaches an example of such a conversion that would occur as part of the translation process handled by the proxy, where the metalanguage may be formatted to fit the respective receiving device’s capabilities, such as DOCSIS for the configuration file. Both Girbal and Finkelstein lend their teachings to further extend the teachings of Zilbershtein et al. without altering the principle of operation of Zilbershtein et al.. The three prior art also deal with proxy operations that handle requests between two communicating sides across the proxy.
Claim 10:
The computer device of claim 9, wherein the processing system is further configured with processor-executable instruction to perform operations comprising,
segmenting the HTTPS response into TFTP data packets
(“…division of one or more packets of the HTTP response from the server 110, into blocks of a size suitable for the TFTP environment of LAN 170…”, “…SPA 220 divides the response into TFTP blocks…”) [Zilbershtein et al. para 128]
and establishing a TFTP data transfer session with the CPE device before sending the TFTP data packets to the CPE device.
(“…file name is found on first read/write TFTP packet. The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”, “…in order to know which file is transferred and on which session…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that a TFTP data transfer session is established and identified before the file transfer occurs, thereby corresponding to the claim limitation.
Claim 11:
The computing device of claim 9, wherein the processing system is further configured with processor-executable instructions to perform operations such that receiving the TFTP request from the CPE device comprises
receiving the TFTP request on a User Datagram Protocol (UDP) port
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that the TFTP request is received on a UDP port of the proxy service, where the session is identified using the UDP port information.
Claim 14:
The computing device of claim 9, wherein the processing system is further configured with processor-executable instructions to perform operations comprising,
loading configuration settings, the configuration settings comprising one or more of backend server universal resource locators (URLs), caching settings, or authentication schemas
(“…According to some embodiments of the invention, the gateway handles transforms non-secure requests to secure requests. Optionally, this involves configuration of credentials on the gateway…”) [Zilbershtein et al. para 21]
Examiner notes: This teaching corresponds to loading configuration settings into the proxy service, where the configuration of credentials represents authentication schemas.
Claim 17:
A non-transitory processor-readable medium configured with processor-readable instructions configured to cause a processor of a computing device to perform operations of a Trivial File Transfer Protocol (TFTP) to Hypertext Transfer Protocol Secure (HTTPS) proxy service (“…FIG. 1 illustrates alternate installation configurations for a computerized gating device facilitating content transfer between prior art LAN devices and a prior art WAN server according to some exemplary embodiments of the present invention…”) [Zilbershtein et al. para 87]; (“…The present invention relies upon execution of various commands and analysis and translation of various data inputs. Any of these commands, analyses or translations may be accomplished by software, hardware or firmware according to various embodiments of the invention. In an exemplary embodiment of the invention, machine readable media contain instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache. In an exemplary embodiment of the invention, a CPU executes instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache…”) [Zilbershtein et al. para 181] comprising,
receiving a Trivial File Transfer Protocol (TFTP) request from the CPE device, the TFTP request comprising a request for a configuration file or a firmware update
(“…the comprising: (a) intercepting a plurality of requests for a same content item stored on a remote server from a plurality of devices, said request in a low parallelity protocol…”) [Zilbershtein et al. column 1 claim 1 page 12]; (“…In some embodiments of the invention, each device 150 makes a request for upgrade. Optionally, devices 150 are programmed to check for available software upgrades during start up...”) [Zilbershtein et al. para 137];
translating the TFTP request into an HTTPS request
(“…Optionally, said translating includes translation from a TFTP/UDP/IP protocol to an HTTPS/TCP/IP protocol…”) [Zilbershtein et al. para 34]
sending the HTTPS request to the backend server via the...communication link...
(“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]
receiving from the backend server an HTTPS response that includes the requested configuration file or firmware update
(“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…An aspect of some embodiments of the present invention relates to facilitating download of a content item from a server using a relatively high parallelity communication protocol to a network device that employs a lower parallelity protocol. Optionally, the content item is a software update…”) [Zilbershtein et al. para 15]
translating the HTTPS response into a TFTP response
(“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]
and sending TFTP data packets to the CPE device
(“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al. do not disclose,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
However, Girbal teaches,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
(“...the proxy server 240 has any number of consistent, pre-established, and pre-authenticated proxy/back-end TCP connections 260 with the back-end server 270...”) [Girbal para 34];
While, Finkelstein teaches,
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
(“...the request may be formatted in accordance with a meta-language such as XML, YANG, a DOCSIS configuration file, or the like... device proxy, however, may in certain example embodiments, translate the request to a device-specific format prior to communicating the request to an associated physical device...”) [Finkelstein para 70];
Therefore, it would have been obvious to one of ordinary skill in the art at the time of applicants' filed invention to incorporate the teachings of Girbal and Finkelstein into that of Zilbershtein et al. in order to not require separate establishment of authenticated TCP connections for every request and for the receiving device to be able to handle the request in a format it has capabilities for handling. Zilbershtein et al. teaches the utilization of HTTPS connections between the proxy and backend which would benefit from the advantages offered by Girbal that has pre-authenticated connections between the proxy and backend, thereby reducing the amount of separate requests required saving resources especially the given nature of higher overhead with secured connections. Zilbershtein et al. teaches translation of protocols from TFTP to HTTPS and vice versa, but does not go into detail regarding the specifics of the exact file formats utilized. Finkelstein teaches an example of such a conversion that would occur as part of the translation process handled by the proxy, where the metalanguage may be formatted to fit the respective receiving device’s capabilities, such as DOCSIS for the configuration file. Both Girbal and Finkelstein lend their teachings to further extend the teachings of Zilbershtein et al. without altering the principle of operation of Zilbershtein et al.. The three prior art also deal with proxy operations that handle requests between two communicating sides across the proxy.
Claim 18:
The non-transitory processor-readable medium of claim 17, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations further comprising,
segmenting the HTTPS response into TFTP data packets
(“…division of one or more packets of the HTTP response from the server 110, into blocks of a size suitable for the TFTP environment of LAN 170…”, “…SPA 220 divides the response into TFTP blocks…”) [Zilbershtein et al. para 128]
and establishing a TFTP data transfer session with the CPE device before sending the TFTP data packets to the CPE device
(“…file name is found on first read/write TFTP packet. The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”, “…in order to know which file is transferred and on which session…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that a TFTP data transfer session is established and identified before the file transfer occurs, thereby corresponding to the claim limitation.
Claim 19:
The non-transitory processor-readable medium of claim 17, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations such that receiving the TFTP request from the CPE device comprises
receiving the TFTP request on a User Datagram Protocol (UDP) port of the TFTP-to-HTTPS proxy service.
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source/destination UDP/TCP port in order to identify the session on which the file is transferred…”) [Zilbershtein et al. para 134]
Examiner notes: This indicates that the TFTP request is received on a UDP port of the proxy service, where the session is identified using the UDP port information.
Claim 22:
The non-transitory processor-readable medium of claim 17, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations further comprising,
loading configuration settings for the TFTP-to-HTTPS proxy service, the configuration settings comprising one or more of backend server universal resource locators (URLs), caching settings, or authentication schemas.
(“…According to some embodiments of the invention, the gateway handles transforms non-secure requests to secure requests. Optionally, this involves configuration of credentials on the gateway…”) [Zilbershtein et al. para 21]
Examiner notes: This teaching corresponds to loading configuration settings into the proxy service, where the configuration of credentials represents authentication schemas.
Claim 25:
A processing system, (“…In an exemplary embodiment of the invention, there is provided a method for bidirectional gating between low parallelity devices in a network and a remote server with a higher parallelity…”) [Zilbershtein et al. para 25]; (“…FIG. 1 illustrates alternate installation configurations for a computerized gating device facilitating content transfer between prior art LAN devices and a prior art WAN server according to some exemplary embodiments of the present invention…”) [Zilbershtein et al. para 87]; (“…The present invention relies upon execution of various commands and analysis and translation of various data inputs. Any of these commands, analyses or translations may be accomplished by software, hardware or firmware according to various embodiments of the invention. In an exemplary embodiment of the invention, machine readable media contain instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache. In an exemplary embodiment of the invention, a CPU executes instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache…”) [Zilbershtein et al. para 181] comprising,
means for receiving a Trivial File Transfer Protocol (TFTP) request from the Customer Premises Equipment (CPE) device, the TFTP request comprising a request for a configuration file or a firmware update
(“…the comprising: (a) intercepting a plurality of requests for a same content item stored on a remote server from a plurality of devices, said request in a low parallelity protocol…”) [Zilbershtein et al. column 1 claim 1 page 12]; (“…In some embodiments of the invention, each device 150 makes a request for upgrade. Optionally, devices 150 are programmed to check for available software upgrades during start up...”) [Zilbershtein et al. para 137];
means for translating the TFTP request into a Hypertext Transfer Protocol Secure (HTTPS) request
(“…Optionally, said translating includes translation from a TFTP/UDP/IP protocol to an HTTPS/TCP/IP protocol…”) [Zilbershtein et al. para 34]
means for sending the HTTPS request to the backend server via the...communication link...
(“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]
means for receiving from the backend server an HTTPS response that includes the requested configuration file or firmware update
(“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…An aspect of some embodiments of the present invention relates to facilitating download of a content item from a server using a relatively high parallelity communication protocol to a network device that employs a lower parallelity protocol. Optionally, the content item is a software update…”) [Zilbershtein et al. para 15]
means for translating the HTTPS response into a TFTP response
(“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]
and means for sending TFTP data packets to the CPE device
(“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al. do not disclose,
authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
However, Girbal teaches,
means for authenticating the TFTP-to-HTTPS proxy service with the backend server to establish an authenticated HTTPS communication link between the TFTP-to-HTTPS proxy service and the backend server
the link between the proxy service and the backend for the HTTPS request is the authenticated HTTPS communication link
(“...the proxy server 240 has any number of consistent, pre-established, and pre-authenticated proxy/back-end TCP connections 260 with the back-end server 270...”) [Girbal para 34];
While, Finkelstein teaches,
translating comprises: converting the requested configuration file received in a first file format into a DOCSIS configuration file format readable by the CPE device; or converting the requested firmware update received in the first file format into a firmware binary file format readable by the CPE device
(“...the request may be formatted in accordance with a meta-language such as XML, YANG, a DOCSIS configuration file, or the like... device proxy, however, may in certain example embodiments, translate the request to a device-specific format prior to communicating the request to an associated physical device...”) [Finkelstein para 70];
Therefore, it would have been obvious to one of ordinary skill in the art at the time of applicants' filed invention to incorporate the teachings of Girbal and Finkelstein into that of Zilbershtein et al. in order to not require separate establishment of authenticated TCP connections for every request and for the receiving device to be able to handle the request in a format it has capabilities for handling. Zilbershtein et al. teaches the utilization of HTTPS connections between the proxy and backend which would benefit from the advantages offered by Girbal that has pre-authenticated connections between the proxy and backend, thereby reducing the amount of separate requests required saving resources especially the given nature of higher overhead with secured connections. Zilbershtein et al. teaches translation of protocols from TFTP to HTTPS and vice versa, but does not go into detail regarding the specifics of the exact file formats utilized. Finkelstein teaches an example of such a conversion that would occur as part of the translation process handled by the proxy, where the metalanguage may be formatted to fit the respective receiving device’s capabilities, such as DOCSIS for the configuration file. Both Girbal and Finkelstein lend their teachings to further extend the teachings of Zilbershtein et al. without altering the principle of operation of Zilbershtein et al.. The three prior art also deal with proxy operations that handle requests between two communicating sides across the proxy.
Claim(s) 4, 12, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1) in view of Kanza et al. (US 20240131422 A1).
Claim 4:
Zilbershtein et al., Girbal, and Finkelstein teach the method of claim 1, further comprising,
checking a cache in the TFTP-to-HTTPS proxy service for the requested configuration file or firmware update
(“…In an exemplary embodiment of the invention, the gateway also includes a local network cache so that some requests may be processed locally, without being relayed to remote server 110…”) [Zilbershtein et al. para 106]
Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, Kanza et al. do teach,
determining whether the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service
(“…The gateway 204 can be configured to cache gaming objects (e.g., a gaming scenery such as a building, a gaming object such as a gun, a software update, an item represented by an Non-Fungible Token or NFT, etc.) …”) [Kanza et al. para 39]; (“…The gateway 204 can then determine if the requested object (or relevant sub-space) is in the cache using the spatial index. If the gaming object is found, the gateway 204 retrieve it from the cache and serve it to the computing device 202 at step 218A. If the gateway 204 does not find the requested gaming object in the cache, the gateway 204 can forward the gaming packets associated with the request to gaming server 209 at step 216B. The gaming server 209 can in return serve to the gateway 204 at step 218B the requested gaming object(s), which the gateway 204 can then serve to the computing device 202 at step 218C…”) [Kanza et al. para 39]
Zilbershtein et al., Girbal, and Finkelstein further teach,
wherein in response to determining that the requested configuration file or firmware update is not present in the cache of the TFTP-to-HTTPS proxy service the TFTP-to-HTTPS proxy service performs operations including sending the HTTPS request to the backend server, receiving the HTTPS response from the backend server, translating the HTTPS response into a TFTP response, and sending the translated TFTP response to the CPE device
(“…In the current example, CCM 300 compares the request to other requests it is currently handling and determines that it is a new request…”) [Zilbershtein et al. para 117]; (“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]; (“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]; (“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106];
Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, Kanza et al. do teach,
And the method further comprises storing the translated HTTPS response in the cache of the TFTP-to-HTTPS proxy service
(“…The operations can include providing one or more computing devices access to internet services, monitoring internet traffic associated with the one or more computing devices, storing in the non-transitory machine-readable medium a plurality of gaming objects associated with a gaming application…”) [Kanza et al. para 14]
and wherein in response to determining that the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service, the method further comprises sending the stored translated HTTPS response from the cache of the TFTP-to-HTTPS proxy service to the CPE device
(“…If the gaming object is found, the gateway 204 retrieve it from the cache and serve it to the computing device 202 at step 218…”) [Kanza et al. para 39]
Kanza is analogous to the claimed invention as they both relate to methods with caching capabilities. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Kanza and provide determining whether the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service, storing the translated HTTPS response in the cache of the TFTP-to-HTTPS proxy service, and sending the stored translated HTTPS response from the cache of the TFTP-to-HTTPS proxy service to the CPE device in order to provide best practice based on the need for performance, efficiency, and network bandwidth optimization.
Claim(s) 5, 13, and 21 is/are rejected under 35 U.S.C. 103 as being unpatentable over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1) in view of LU et al. (CN 113852666 A).
Claim 5:
Zibershtein et al., Girbal, and Finkelstein teaches the method of claim 1, further comprising the TFTP-to-HTTPS proxy service:
receiving acknowledgments from the CPE device for each of the TFTP data packets (“…Optionally, the low parallelity protocol employs a "Request and wait" algorithm. "Parallelity" as used herein, refers to a number of data transfer units (e.g., packets) concurrently sent by a responding device in response to a single acknowledgment…”) [Zilbershtein et al. para 19];
but, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, LU et al. do teach,
terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device
(“…In step 510, after the data transmission is completed, the TCP connection between the business system and the FTP agent is disconnected. According to one embodiment of the present invention, for example, referring to FIG600-13, a TCP connection is terminated via a TCP four-way handshake.…”) [LU et al. para 47]
LU is analogous to the claimed invention as they both relate to proxy translation devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of LU and provide terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device in order to provide best practice based on the need for efficient resource management, enhanced security, and predictable system behavior.
Claim(s) 7, 15, and 23 is/are rejected under 35 U.S.C. 103 as being unpatentable over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1) in view of Park et al. (US 10158736 B2).
Claim 7:
Zilbershtein et al., Girbal, and Finkelstein teaches a method of claims 1 and 6 above, but fail to teach, however, Park et al. teach
periodically checking for configuration updates for the TFTP-to-HTTPS proxy service
(“…That is, the Proxy Registration Update Request may be triggered by any one of the NAN proxy server 1620 and the NAN proxy client 1630…”) [Park et al. para 171]
retrieving updates from a centralized configuration management system
(“…The NAN proxy server 1620 may also perform an operation of checking whether an update procedure of the proxy service is needed…”) [Park et al. para 171]
and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service
(“…FIG. 15 is a diagram showing a method of updating a proxy service…”) [Park et al. para 154]
Park is analogous to the claimed invention as they both relate to the use of proxy to manage and optimize network communication between different components or systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Park and provide periodically checking for configuration updates for the TFTP-to-HTTPS proxy service; retrieving updates from a centralized configuration management system and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service in order to provide operational efficiency, security, enhancing system reliability, and compliance.
Claim(s) 8, 16, and 24 is/are rejected under 35 U.S.C. 103 as being unpatentable over Zilbershtein et al. (US 20080008211) in view of Girbal (US 20200366761 A1) in view of Finkelstein (US 20160094402 A1) in view of HOLAR et al. (EP 2031817 A1).
Claim 8:
Zilbershtein et al., Girbal, and Finkelstein teach a method of claim 1
wherein the TFTP-to-HTTPS proxy service is deployed in a distributed access network architecture comprising multiple TFTP-to-HTTPS proxy services,
the method further comprising monitoring multiple UDP ports to receive TFTP requests from multiple CPE devices
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source destination UDP/TCP port in order to identify the session on which the file is transferred…” “…According to various exemplary embodiments of the invention, gateway 200 may match responses to requests by analyzing one or more of IP address of server 110, TCP port of server 110, TCP port of gateway 200…”) [Zilbershtein et al. para 134]
but, Zilbershtein et al., Girbal, and Finkelstein do not explicitly teach,
distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy
However, HOLAR et al. do teach,
distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy
(“…Within the DMZ is a load balancer 702 configured to distribute requests received from the external network through the external firewall 106 to the reverse proxy port 204' of an appropriate reverse HTTP gateway 112'…”) [HOLAR et al. para 67]
HOLAR is analogous to the claimed invention as they both relate to proxy devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of HOLOR and provide distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy in order to provide enhanced performance, reliability, and scalability.
Claim 12:
Zilbershtein et al., Girbal, and Finkelstein teach the computing device of claim 9, further comprising a cache coupled to the processing system, wherein the processing system is further configured with processor-executable instructions to perform operations comprising,
checking a cache in the TFTP-to-HTTPS proxy service for the requested configuration file or firmware update
(“…In an exemplary embodiment of the invention, the gateway also includes a local network cache so that some requests may be processed locally, without being relayed to remote server 110…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, Kanza et al. teach,
determining whether the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service
(“…The gateway 204 can be configured to cache gaming objects (e.g., a gaming scenery such as a building, a gaming object such as a gun, a software update, an item represented by an Non-Fungible Token or NFT, etc.) …”) [Kanza et al. para 39]; (“…The gateway 204 can then determine if the requested object (or relevant sub-space) is in the cache using the spatial index. If the gaming object is found, the gateway 204 retrieve it from the cache and serve it to the computing device 202 at step 218A. If the gateway 204 does not find the requested gaming object in the cache, the gateway 204 can forward the gaming packets associated with the request to gaming server 209 at step 216B. The gaming server 209 can in return serve to the gateway 204 at step 218B the requested gaming object(s), which the gateway 204 can then serve to the computing device 202 at step 218C…”) [Kanza et al. para 39]
Zilbershtein et al., Girbal, and Finkelstein further teach,
wherein in response to determining that the requested configuration file or firmware update is not present in the cache of the TFTP-to-HTTPS proxy service the TFTP-to-HTTPS proxy service performs operations including sending the HTTPS request to the backend server, receiving the HTTPS response from the backend server, translating the HTTPS response into a TFTP response, and sending the translated TFTP response to the CPE device
(“…In the current example, CCM 300 compares the request to other requests it is currently handling and determines that it is a new request…”) [Zilbershtein et al. para 117]; (“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]; (“...In an exemplary embodiment of the invention, a response received from a remote server in a secure protocol is translated to a non secure protocol prior to transmission and/or distribution within a LAN…”) [Zilbershtein et al. para 24]; (“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]; (“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106];
Zilbershtein et al., Girbal, and Finkelstein fail to teach, however Kanza et al. teach,
And the method further comprises storing the translated HTTPS response in the cache of the TFTP-to-HTTPS proxy service
(“…The operations can include providing one or more computing devices access to internet services, monitoring internet traffic associated with the one or more computing devices, storing in the non-transitory machine-readable medium a plurality of gaming objects associated with a gaming application…”) [Kanza et al. para 14]
and wherein in response to determining that the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service, the method further comprises sending the stored translated HTTPS response from the cache of the TFTP-to-HTTPS proxy service to the CPE device
(“…If the gaming object is found, the gateway 204 retrieve it from the cache and serve it to the computing device 202 at step 218…”) [Kanza et al. para 39]
Kanza is analogous to the claimed invention as they both relate to methods with caching capabilities. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Kanza and provide determining whether the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service, storing the translated HTTPS response in the cache of the TFTP-to-HTTPS proxy service, and sending the stored translated HTTPS response from the cache of the TFTP-to-HTTPS proxy service to the CPE device in order to provide best practice based on the need for performance, efficiency, and network bandwidth optimization.
Claim 13:
Zibershtein et al., Girbal, and Finkelstein teaches the computing device of claim 9, wherein the processing system is further configured with processor-executable instructions to perform operations comprising,
receiving acknowledgments from the CPE device for each of the TFTP data packets (“…Optionally, the low parallelity protocol employs a "Request and wait" algorithm. "Parallelity" as used herein, refers to a number of data transfer units (e.g., packets) concurrently sent by a responding device in response to a single acknowledgment…”) [Zilbershtein et al. para 19];
but, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, LU et al. teach,
terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device
(“…In step 510, after the data transmission is completed, the TCP connection between the business system and the FTP agent is disconnected. According to one embodiment of the present invention, for example, referring to FIG600-13, a TCP connection is terminated via a TCP four-way handshake.…”) [LU et al. para 47]
LU is analogous to the claimed invention as they both relate to proxy translation devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of LU and provide terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device in order to provide best practice based on the need for efficient resource management, enhanced security, and predictable system behavior.
Claim 15:
Zilbershtein et al., Girbal, and Finkelstein teaches a computing device of claims 9 and 14 above, but fail to teach, however, Park et al. teach,
periodically checking for configuration updates for the TFTP-to-HTTPS proxy service
(“…That is, the Proxy Registration Update Request may be triggered by any one of the NAN proxy server 1620 and the NAN proxy client 1630…”) [Park et al. para 171]
retrieving updates from a centralized configuration management system
(“…The NAN proxy server 1620 may also perform an operation of checking whether an update procedure of the proxy service is needed…”) [Park et al. para 171]
and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service
(“…FIG. 15 is a diagram showing a method of updating a proxy service…”) [Park et al. para 154]
Park is analogous to the claimed invention as they both relate to the use of proxy to manage and optimize network communication between different components or systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Park and provide periodically checking for configuration updates for the TFTP-to-HTTPS proxy service; retrieving updates from a centralized configuration management system and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service in order to provide operational efficiency, security, enhancing system reliability, and compliance.
Claim 16:
Zilbershtein et al., Girbal, and Finkelstein teach a computing device of claim 9,
wherein the processing system is deployed in a distributed access network architecture comprising multiple processing systems configured to provide TFTP-to-HTTPS proxy services, and wherein the processing system is further configured with processor-executable instructions to perform operations comprising: monitoring multiple UDP ports to receive TFTP requests from multiple CPE devices;
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source destination UDP/TCP port in order to identify the session on which the file is transferred…” “…According to various exemplary embodiments of the invention, gateway 200 may match responses to requests by analyzing one or more of IP address of server 110, TCP port of server 110, TCP port of gateway 200…”) [Zilbershtein et al. para 134]
but, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, HOLAR et al. teach,
and distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy
(“…Within the DMZ is a load balancer 702 configured to distribute requests received from the external network through the external firewall 106 to the reverse proxy port 204' of an appropriate reverse HTTP gateway 112'…”) [HOLAR et al. para 67]
HOLAR is analogous to the claimed invention as they both relate to proxy devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of HOLOR and provide distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy in order to provide enhanced performance, reliability, and scalability.
Claim 20:
Zilbershtein et al., Girbal, and Finkelstein teach the non-transitory processor-readable medium of claim 17, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations further (“…FIG. 1 illustrates alternate installation configurations for a computerized gating device facilitating content transfer between prior art LAN devices and a prior art WAN server according to some exemplary embodiments of the present invention…”) [Zilbershtein et al. para 87]; (“…The present invention relies upon execution of various commands and analysis and translation of various data inputs. Any of these commands, analyses or translations may be accomplished by software, hardware or firmware according to various embodiments of the invention. In an exemplary embodiment of the invention, machine readable media contain instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache. In an exemplary embodiment of the invention, a CPU executes instructions for translation of a low parallelity and/or insecure protocol request to a high parallelity and/or secure protocol request, and/or translation of a high parallelity and/or secure protocol response to a LAN response and/or implementation of dynamic flow control of data blocks stored in a cache…”) [Zilbershtein et al. para 181] comprising,
checking a cache in the TFTP-to-HTTPS proxy service for the requested configuration file or firmware update
(“…In an exemplary embodiment of the invention, the gateway also includes a local network cache so that some requests may be processed locally, without being relayed to remote server 110…”) [Zilbershtein et al. para 106]
sending the HTTPS request to the backend server, receiving the HTTPS response from the backend server, translating the HTTPS response into a TFTP response, sending the translated TFTP response to the CPE device
(“…In an exemplary embodiment of the invention, only one of the requests is relayed to the remote server. In an exemplary embodiment of the invention, a single response from the server is used to fill requests from multiple devices…”) [Zilbershtein et al. para 17]; (“…wherein said additionally translating includes translation from a HTTPS/TCP/IP protocol to a TFTP/UDP/IP protocol…”) [Zilbershtein et al. para 34]; (“…The request elicits an HTTP response which is translated into a series of TFTP/UDP/IP data blocks and relayed to the requesting device…”) [Zilbershtein et al. para 106]
But, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, Kanza et al. teach,
determining whether the requested configuration file or firmware update is present in the cache
and storing the translated HTTPS response in the cache in response to determining that the requested configuration file or firmware update is not present in the cache; and sending the stored translated HTTPS response from the cache to the CPE device in response to determining that the requested configuration file or firmware update is present in the cache.
(“…The operations can include providing one or more computing devices access to internet services, monitoring internet traffic associated with the one or more computing devices, storing in the non-transitory machine-readable medium a plurality of gaming objects associated with a gaming application…”) [Kanza et al. para 14]; (“…The gateway 204 can be configured to cache gaming objects (e.g., a gaming scenery such as a building, a gaming object such as a gun, a software update, an item represented by an Non-Fungible Token or NFT, etc.) …”) [Kanza et al. para 39]; (“…The gateway 204 can then determine if the requested object (or relevant sub-space) is in the cache using the spatial index. If the gaming object is found, the gateway 204 retrieve it from the cache and serve it to the computing device 202 at step 218A. If the gateway 204 does not find the requested gaming object in the cache, the gateway 204 can forward the gaming packets associated with the request to gaming server 209 at step 216B. The gaming server 209 can in return serve to the gateway 204 at step 218B the requested gaming object(s), which the gateway 204 can then serve to the computing device 202 at step 218C…”) [Kanza et al. para 39];
Kanza is analogous to the claimed invention as they both relate to methods with caching capabilities. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Kanza and provide determining whether the requested configuration file or firmware update is present in the cache of the TFTP-to-HTTPS proxy service, storing the translated HTTPS response in the cache of the TFTP-to-HTTPS proxy service, and sending the stored translated HTTPS response from the cache of the TFTP-to-HTTPS proxy service to the CPE device in order to provide best practice based on the need for performance, efficiency, and network bandwidth optimization.
Claim 21:
Zibershtein et al., Girbal, and Finkelstein teaches the non-transitory processor-readable medium of claim 17, wherein the processor-executable instructions are further configured to cause the processor of the computing device to perform operations further comprising,
receiving acknowledgments from the CPE device for each of the TFTP data packets (“…Optionally, the low parallelity protocol employs a "Request and wait" algorithm. "Parallelity" as used herein, refers to a number of data transfer units (e.g., packets) concurrently sent by a responding device in response to a single acknowledgment…”) [Zilbershtein et al. para 19];
but, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, LU et al. teach,
terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device
(“…In step 510, after the data transmission is completed, the TCP connection between the business system and the FTP agent is disconnected. According to one embodiment of the present invention, for example, referring to FIG600-13, a TCP connection is terminated via a TCP four-way handshake.…”) [LU et al. para 47]
LU is analogous to the claimed invention as they both relate to proxy translation devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of LU and provide terminating the TFTP data transfer session upon successful transmission of all TFTP data packets to the CPE device in order to provide best practice based on the need for efficient resource management, enhanced security, and predictable system behavior.
Claim 23:
Zilbershtein et al., Girbal, and Finkelstein teaches a non-transitory processor-readable medium of claims 17 and 22 above, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations, but do not explicitly teach,
further comprising periodically checking for configuration updates for the TFTP-to-HTTPS proxy service; retrieving updates from a centralized configuration management system; and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service
However, Park et al. do teach,
periodically checking for configuration updates for the TFTP-to-HTTPS proxy service
(“…That is, the Proxy Registration Update Request may be triggered by any one of the NAN proxy server 1620 and the NAN proxy client 1630…”) [Park et al. para 171]
retrieving updates from a centralized configuration management system
(“…The NAN proxy server 1620 may also perform an operation of checking whether an update procedure of the proxy service is needed…”) [Park et al. para 171]
and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service
(“…FIG. 15 is a diagram showing a method of updating a proxy service…”) [Park et al. para 154]
Park is analogous to the claimed invention as they both relate to the use of proxy to manage and optimize network communication between different components or systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of Park and provide periodically checking for configuration updates for the TFTP-to-HTTPS proxy service; retrieving updates from a centralized configuration management system and applying updates to the configuration settings of the TFTP-to-HTTPS proxy service in order to provide operational efficiency, security, enhancing system reliability, and compliance.
Claim 24
Zilbershtein et al., Girbal, and Finkelstein teach a non-transitory processor-readable medium of claim 17,
wherein the computing device is deployed in a distributed access network architecture comprising multiple TFTP-to-HTTPS proxy services, and wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations further comprising monitoring multiple UDP ports to receive TFTP requests from multiple CPE devices;
(“…The track on file transfer may be done based on the session information such as destination/source and/or ip address and/or source destination UDP/TCP port in order to identify the session on which the file is transferred…” “…According to various exemplary embodiments of the invention, gateway 200 may match responses to requests by analyzing one or more of IP address of server 110, TCP port of server 110, TCP port of gateway 200…”) [Zilbershtein et al. para 134]
but, Zilbershtein et al., Girbal, and Finkelstein fail to teach, however, HOLAR et al. teach,
and distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy
(“…Within the DMZ is a load balancer 702 configured to distribute requests received from the external network through the external firewall 106 to the reverse proxy port 204' of an appropriate reverse HTTP gateway 112'…”) [HOLAR et al. para 67]
HOLAR is analogous to the claimed invention as they both relate to proxy devices. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Zilbershtein, Girbal, and Finkelstein teachings to incorporate the teachings of HOLOR and provide distributing TFTP communication processing among the multiple TFTP-to-HTTPS proxy services to achieve load balancing and redundancy in order to provide enhanced performance, reliability, and scalability.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Oscar Louie whose telephone number is (571) 270-1684 and E-mail address is OSCAR.LOUIE@USPTO.GOV. Note that a form SB-439 must be on file in order to conduct correspondence by E-mail, however, E-mail may be utilized to arrange time(s) for interview(s) without the SB-439 form. The examiner can normally be reached on Monday through Thursday between 05:30AM-03:30 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/OSCAR A LOUIE/Supervisory Patent Examiner, Art Unit 2445