Global replication policy for multi-copy replication

Information

  • Patent Grant
  • 10235088
  • Patent Number
    10,235,088
  • Date Filed
    Wednesday, March 30, 2016
    8 years ago
  • Date Issued
    Tuesday, March 19, 2019
    5 years ago
Abstract
In one embodiment, a method includes measuring a first parameter associated with copying a storage entity to a first backup site, measuring a second parameter associated with copying the storage entity to a second backup site and determining a replication mode to copy the storage entity to the first backup site and a replication mode to copy the storage entity to the second backup site in response to a replication policy and the first and second parameters measured.
Description
BACKGROUND

Computer data is vital to today's organizations and a significant part of protection against disasters is focused on data protection. As solid-state memory has advanced to the point where cost of memory has become a relatively insignificant factor, organizations can afford to operate with systems that store and process terabytes of data.


Conventional data protection systems include tape backup drives, for storing organizational production site data on a periodic basis. Another conventional data protection system uses data replication, by creating a copy of production site data of an organization on a secondary backup storage system, and updating the backup with changes. The backup storage system may be situated in the same physical location as the production storage system, or in a physically remote location. Data replication systems generally operate either at the application level, at the file system level, or at the data block level.


SUMMARY

In one embodiment, a method includes measuring a first parameter associated with copying a storage entity to a first backup site, measuring a second parameter associated with copying the storage entity to a second backup site and determining a replication mode to copy the storage entity to the first backup site and a replication mode to copy the storage entity to the second backup site in response to a replication policy and the first and second parameters measured.


In another embodiment, an apparatus includes electronic hardware circuitry configured to measure a first parameter associated with copying a storage entity to a first backup site, measure a second parameter associated with copying the storage entity to a second backup site and determine a replication mode to copy the storage entity to the first backup site and a replication mode to copy the storage entity to the second backup site in response to a replication policy and the first and second parameters measured.


In a further embodiment, an article includes a non-transitory computer-readable medium that stores computer-executable instructions. In an embodiment, the instructions cause a machine to measure a first parameter associated with copying a storage entity to a first backup site, measure a second parameter associated with copying the storage entity to a second backup site and determine a replication mode to copy the storage entity to the first backup site and a replication mode to copy the storage entity to the second backup site in response to a replication policy and the first and second parameters measured.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of an example of a data protection system to apply a global replication policy to multi-copy replication, according to one embodiment of the disclosure.



FIG. 2 is a flowchart of an example of a process to apply a global replication policy to multi-copy replication, according to one embodiment of the disclosure.



FIG. 3 is a computer on which any portion of the process of FIG. 2 may be implemented, according to one embodiment of the disclosure.





DETAILED DESCRIPTION

In certain embodiments, the current disclosure may enable techniques to apply a global replication policy to multi-copy replication. In one particular example, a system may determine a replication mode to a link to replicate data in response to a replication policy and parameters measured; and, after a time interval, the system may change the replication mode for the link in response to the replication policy and additional parameter measurements.


Referring to FIG. 1, a replication system 100 may include sites 102, 104, 106. In one example, a site may be a storage network. In another example, a site may be a cloud network. In one particular example, the site 102 may be a primary site and the sites 104, 106 may be backup sites.


In one particular example, the system 100 may include features and processes that are similar to approaches described in U.S. Pat. No. 8,478,955, issued Jul. 2, 2013, entitled “VIRTUALIZED CONSISTENCY GROUP USING MORE THAN ONE DATA PROTECTION APPLIANCE;” U.S. Pat. No. 8,433,869, issued Apr. 30, 2013, entitled “VIRTUALIZED CONSISTENCY GROUP USING AN ENHANCED SPLITTER;” and U.S. Pat. No. 8,832,399, issued Sep. 9, 2014, entitled “VIRTUALIZED CONSISTENCY GROUP USING AN ENHANCED SPLITTER,” each of which are assigned to the same assignee as the present patent application. All applications in this paragraph are incorporated herein by reference in their entirety.


The site 104 may be connected to the site 102 by a link 170 and the site 106 may be connected to the site 102 by a link 180. In one particular example, the links 170, 180 may be wide area network (WAN) links. The site 102 may include consistency groups (CGs) 122, 124, 126 and a replicator 140. The CG 122 may include logical units 116a, 116b; the CG 124 includes logical units 118a-118c; and CG 126 may include logical units 120a-120d.


The replicator 140 may include a replication policy 150 used to determine a replication mode for each link to transfer data from a primary site to a backup site and may dynamically change a replication mode for a link based on parameters measured. In one particular example, a replication mode may be one of an asynchronous mode, a synchronous mode or a snapshot based replication mode.


In one particular example, replication modes may include features and processes that are similar to approaches described in U.S. Pat. No. 7,774,565, issued Aug. 10, 2010, entitled “METHODS AND APPARATUS FOR POINT IN TIME DATA ACCESS AND RECOVERY;” U.S. Pat. No. 8,335,771, issued Dec. 18, 2012, entitled “STORAGE ARRAY SNAPSHOTS FOR LOGGED ACCESS REPLICATION IN A CONTINUOUS DATA PROTECTION SYSTEM;” and U.S. Pat. No. 8,898,515, issued Nov. 25, 2014, entitled “SYNCHRONOUS REPLICATION USING MULTIPLE DATA PROTECTION APPLIANCES ACROSS MULTIPLE STORAGE ARRAYS,” each of which are assigned to the same assignee as the present patent application. All applications in this paragraph are incorporated herein by reference in their entirety.


In one particular illustrative example, the replication policy 150 requires that the two backup copies of the CG 124 being generated: one copy of CG 124 is stored on the site 104 and one backup copy is stored on the site 106. The replication policy 150 also requires that one backup is provided synchronously and the other backup is provided asynchronously. At one point-in-time, the latency on the link 170 is measured to be smaller than the latency measured on the link 180. In this example, the replicator 140 determines that a copy of the CG 124 provided to the site 104 over the link 170 is synchronous replication and the copy of the CG 124 provided to the site 106 over the link 180 is asynchronous replication. After a time interval, the latency of the link 170 is measured to be greater than the latency measured on the link 180. The replicator 140 responds by replicating the copy of the CG 124 to the site 104 over the link 170 asynchronously and replicating the copy of the CG 124 to the site 106 over the link 180 synchronously.


In another particular illustrative example, the replication policy 150 requires that each of the CGS 122, 124, 126 provide one synchronous copy to a site and one asynchronous copy to a site and requires that the CGs 122, 124, 126 replicate to site 104 and site 106. In this particular example, the bandwidth of the links 170, 180 are limited and changing over time. The replicator 140 may choose to replicate CG 122 and CG 124 synchronously to site 104 and asynchronously to site 106; and to replicate CG 126 synchronously to site 106 and asynchronously to site 104. After a time interval, the bandwidth of the link 170 may become too small for synchronous replication of CG 122 and CG 124 (e.g., since there is no compression in synchronous replication), the replicator 140 may choose to switch the replication of CG 122 and make replication synchronous to site 106 and asynchronous to site 104.


In one particular example, the replicator 140 may assign synchronous replication to links with lower relative latency. In another particular example, the replicator 140 may assign snapshot-based replication to links the bandwidth is small or expensive. In another particular example, the replicator 140 may assign snapshot-based replication to links for which the capacity of the storage at the copy is expensive.


In other particular examples, the replicator 140 may choose a replication mode based on inter-consistency group considerations. For example, the replicator 140 may select links with higher bandwidth for CGs to use a continuous replication mode and use snapshot-based replication mode for limited bandwidth links since snapshot-based replication consumes less bandwidth compared to continuous replication.


Referring to FIG. 2, a process 200 is an example of a process to apply a global replication policy to multi-copy replication, according to one embodiment of the disclosure.


Process 200 may receive a replication policy (202). In one example, a replication policy 150 may be entered manually. In another example, the replication may be entered using an automated system. In one particular example, the replication policy 150 may include a number of copies required and which sites (e.g., sites 104, 106) to store the copies. In another example, the replication policy 150 may include a number of links that should be synchronous, asynchronous or snapshot-based and a time interval to use each mode.


Process 200 may measure parameters (204). In one examples, the parameters may include at least one of latency in the links (e.g., links 170, 180), the bandwidth of the links (e.g., links 170, 180) and a cost of storage on each site (site 104, 106).


Process 200 may assign replication modes to links (206). For example, in response to the replication policy 150 and the parameters measured in processing block 204, the replicator 140 selects a replication mode for each link.


Process 200 may measure parameters after a period of time (208) and determines if the replication modes for the links should be changed (210). For example, the replicator 140 may determine if the replication modes are still applicable based on the additional measured parameters and the replication policy 150.


If the replication modes should be changed, process 200 may change the replication modes (216). For example, the replicator 140 may change the replication modes for one or more links.


Referring to FIG. 3, in one example, the replicator 140 may be the application-consistent generator 140′. The application-consistent generator 140′ may include a processor 302, a volatile memory 304, a non-volatile memory 306 (e.g., hard disk, flash memory) and the user interface (UI) 308 (e.g., a graphical user interface, a mouse, a keyboard, a display, touch screen and so forth). The non-volatile memory 306 may store computer instructions 312, an operating system 316 and data 318. The data 318 may include the replication policy 150. In one example, the computer instructions 312 may be executed by the processor 302 out of volatile memory 504 to perform at least a portion of the processes described herein (e.g., process 200).


The processes described herein (e.g., process 200) are not limited to use with the hardware and software of FIG. 3; they may find applicability in any computing or processing environment and with any type of machine or set of machines that is capable of running a computer program. The processes described herein may be implemented in hardware, software, or a combination of the two. The processes described herein may be implemented in computer programs executed on programmable computers/machines that each includes a processor, a non-transitory machine-readable medium or other article of manufacture that is readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and one or more output devices. Program code may be applied to data entered using an input device to perform any of the processes described herein and to generate output information.


The system may be implemented, at least in part, via a computer program product, (e.g., in a non-transitory machine-readable storage medium such as, for example, a non-transitory computer-readable medium), for execution by, or to control the operation of, data processing apparatus (e.g., a programmable processor, a computer, or multiple computers)). Each such program may be implemented in a high level procedural or object-oriented programming language to communicate with a computer system. However, the programs may be implemented in assembly or machine language. The language may be a compiled or an interpreted language and it may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. A computer program may be stored on a non-transitory machine-readable medium that is readable by a general or special purpose programmable computer for configuring and operating the computer when the non-transitory machine-readable medium is read by the computer to perform the processes described herein. For example, the processes described herein may also be implemented as a non-transitory machine-readable storage medium, configured with a computer program, where upon execution, instructions in the computer program cause the computer to operate in accordance with the processes. A non-transitory machine-readable medium may include but is not limited to a hard drive, compact disc, flash memory, non-volatile memory, volatile memory, magnetic diskette and so forth but does not include a transitory signal per se.


The processes described herein are not limited to the specific examples described. For example, the process 200 is not limited to the specific processing order of FIG. 2. Rather, any of the processing blocks of FIG. 2 may be re-ordered, combined or removed, performed in parallel or in serial, as necessary, to achieve the results set forth above.


The processing blocks (for example, in the process 200) associated with implementing the system may be performed by one or more programmable processors executing one or more computer programs to perform the functions of the system. All or part of the system may be implemented as, special purpose logic circuitry (e.g., an FPGA (field-programmable gate array) and/or an ASIC (application-specific integrated circuit)). All or part of the system may be implemented using electronic hardware circuitry that include electronic devices such as, for example, at least one of a processor, a memory, a programmable logic device or a logic gate.


Elements of different embodiments described herein may be combined to form other embodiments not specifically set forth above. Other embodiments not specifically described herein are also within the scope of the following claims.

Claims
  • 1. A method comprising: performing replication, in accordance with a replication policy, of storage entities from a source site to a first backup site over a first link and from the source site to a second backup site over a second link; after a first time period:measuring a first parameter associated with copying a first storage entity of the storage entities to the first backup site over the first link;measuring the parameter associated with copying a second storage entity of the storage entities to the second backup site over the second link;comparing values of the parameter derived from the measuring over the first and second links;and dynamically changing a replication mode to copy the first storage entity to the first backup site and a replication mode to copy the second storage entity to the second backup site as a function of the replication policy and the measured values of the parameter, the changing configured to compensate for variances in the relative values of the parameter measured,wherein the replication mode to copy the first storage entity is a first type of replication mode and the replication mode to copy the second storage entity is a second type of replication mode that is different than the first type of replication mode, and wherein the dynamically changing includes switching the replication mode of the first storage entity to the second type of replication mode and switching the replication mode of the second storage entity to the first type of replication mode;wherein the measuring the parameter is a second measurement of the parameter at a time succeeding the first time period, wherein when the parameter measured is latency, and upon determining at a time preceding the first time period, the measured parameter indicates that latency of data transfer is smaller on the first link than on the second link, and upon determining that the replication mode to copy the storage entity to the first backup site is synchronous replication and that the replication mode to copy the first storage entity to the second backup site is asynchronous replication, performing the synchronous and asynchronous replications prior to conclusion of the time period; wherein, after the first time period, and in response to performing second measurements of the parameter, determining the measured parameter indicates that the latency of data transfer is larger on the first link than on the second link, changing the replication mode to copy the first storage entity to the first backup site from synchronous replication to asynchronous replication and changing the replication mode to copy the second storage entity to the second backup site from asynchronous replication to synchronous replication.
  • 2. The method of claim 1, wherein the parameter comprises cost of storage on the first and second backup sites, and wherein the dynamically adjusting the replication mode to copy the first storage entity to the first back site and the replication mode to copy the second storage entity to the second backup site includes changing the replication mode to snapshot replication mode for one of the storage entities corresponding to one of the first and second backup sites in which capacity of the respective backup site is determined to be expensive for corresponding one of the storage entities relative to another of the back up sites.
  • 3. The method of claim 1, further comprising storing the replication policy, the replication policy comprising at least one of a number of copies of the storage entity required, backup sites to store the copies of the storage entity, a number of links to use for synchronous, asynchronous or snapchat-based replication, and a time interval to use each replication mode.
  • 4. The method of claim 1, wherein the storage entities are consistency groups comprising logical units.
  • 5. An apparatus, comprising: electronic hardware circuitry configured to: perform replication, in accordance with a replication policy, of storage entities from a source site to a first backup site over a first link and from the source site to a second backup site over a second link;after a first time period:measure a parameter associated with copying a first storage entity of the storage entities to the first backup site over the first link;measure the parameter associated with copying a second the storage entity of the storage entities to the second backup site over the second link;compare values of the parameter derived from the measuring over the first and second links;and dynamically change a replication mode to copy the first storage entity to the first backup site and a replication mode to copy the second storage entity to the second backup site as a function of the replication policy and the first and second parameters measured values of the parameter, the changes configured to compensate for variances in the relative values of the parameter measured;wherein the measuring the parameter is a second measurement of the parameter at a time succeeding the first time period, wherein when the parameter measured is latency, and upon determining at a time preceding the first time period, the measured parameter indicates that latency of data transfer is smaller on the first link than on the second link, and upon determining that the replication mode to copy the storage entity to the first backup site is synchronous replication and that the replication mode to copy the first storage entity to the second backup site is asynchronous replication, performing the synchronous and asynchronous replications prior to conclusion of the time period; wherein, after the first time period, and in response to performing second measurements of the parameter, determining the measured parameter indicates that the latency of data transfer is larger on the first link than on the second link, changing the replication mode to copy the first storage entity to the first backup site from synchronous replication to asynchronous replication and changing the replication mode to copy the second storage entity to the second backup site from asynchronous replication to synchronous replication.
  • 6. The apparatus of claim 5, wherein the circuitry comprises at least one of a processor, a memory, a programmable logic device of a logic gate.
  • 7. The apparatus of claim 5, wherein the group of parameters further comprise cost of storage on the first and second backup sites.
  • 8. The apparatus of claim 5, further comprising circuitry configured to store the replication policy, the replication policy comprising at least one of a number of copies of the storage entity required, backup sites to store the copies of the storage entity, a number of links to use for synchronous, asynchronous or snapchat-based replication, and time interval to use each replication mode.
  • 9. The apparatus of claim 5, wherein the storage entities are consistency groups comprising logical units.
  • 10. An article comprising: a non-transitory computer-readable medium that stores computer-executable instructions, the instructions causing a machine to: perform replication, in accordance with a replication policy, of storage entities from a source site to a first backup site over a first link and from the source site to a second backup site over a second link; after a first time period:measure a first parameter associated with copying a first storage entity of the storage entities to a first backup site over the first link;measure the second parameter associated with copying a second the storage entity of the storage entities to the second backup site over the second link;compare values derived from the measuring over the first and second links;and dynamically change a replication mode to copy the first storage entity to the first backup site and a replication mode to copy the second storage entity to the second backup site in response to as a function of the replication policy and the first and second parameters measured values of the parameter, the changes configured to compensate for variances in the relative values of the parameter measured;wherein the measuring the parameter is a second measurement of the parameter at a time succeeding the first time period, wherein when the parameter measured is latency, and upon determining at a time preceding the first time period, the measured parameter indicates that latency of data transfer is smaller on the first link than on the second link, and upon determining that the replication mode to copy the storage entity to the first backup site is synchronous replication and that the replication mode to copy the first storage entity to the second backup site is asynchronous replication, performing the synchronous and asynchronous replications prior to conclusion of the time period; wherein, after the first time period, and in response to performing second measurements of the parameter, determining the measured parameter indicates that the latency of data transfer is larger on the first link than on the second link, changing the replication mode to copy the first storage entity to the first backup site from synchronous replication to asynchronous replication and changing the replication mode to copy the second storage entity to the second backup site from asynchronous replication to synchronous replication.
  • 11. The article of claim 10, wherein the parameters further comprise a cost of storage on the first and second backup sites.
  • 12. The article of claim 10, further comprising instructions causing the machine to store the replication policy, the replication policy comprising at least one of a number of copies of the storage entity required, backup sites to store the copies of the storage entity, a number of links to use for synchronous, asynchronous or snapshot-based replication, and a time interval to use each replication mode.
  • 13. The article of claim 10, wherein the storage entities are consistency groups comprising logical units.
  • 14. The method of claim 1, wherein when the parameter measured is bandwidth, the storage entities are consistency groups (CGs), and the mode of replication for a first portion of the CGs on the first link is synchronous replication mode, the mode of replication for a second portion of the CGs on the first link is asynchronous replication mode, the mode of replication for a first portion of the CGs on the CGs on the second link is synchronous replication mode, and the mode of replication for a second portion of the CGs on the second link is asynchronous replication mode, wherein upon determining the measured parameter indicates that the bandwidth is smaller on the first link than on the second link, selecting at least one of the CGs from the second portion of the CGs operating in the asynchronous replication mode and changing the replication mode for the at least on CG to synchronous replication mode, and selecting at least one of the CGs from the first portion of the CGs on the first link operating in synchronous replication mode and changing the replication mode for the at least one CG of the first portion of the CGs to asynchronous replication mode.
  • 15. The method of claim 1, wherein the parameter measured is bandwidth, and the dynamically changing the replication mode is based on inter-consistency groups (CGs), the changing comprising selecting one of the first and second links having higher bandwidth for the CGs to use a continuous replication mode and selecting another of the first and second links having limited amount of bandwidth to use a snapshot-based replication mode.
  • 16. The method of claim 1, wherein the links comprise a wide area network.
US Referenced Citations (239)
Number Name Date Kind
7203741 Marco et al. Apr 2007 B2
7719443 Natanzon May 2010 B1
7783798 Misra Aug 2010 B1
7840536 Ahal et al. Nov 2010 B1
7840662 Natanzon Nov 2010 B1
7844856 Ahal et al. Nov 2010 B1
7860836 Natanzon et al. Dec 2010 B1
7882286 Natanzon et al. Feb 2011 B1
7934262 Natanzon et al. Apr 2011 B1
7958372 Natanzon Jun 2011 B1
8037162 Marco et al. Oct 2011 B2
8041940 Natanzon et al. Oct 2011 B1
8060713 Natanzon Nov 2011 B1
8060714 Natanzon Nov 2011 B1
8103937 Natanzon et al. Jan 2012 B1
8108634 Natanzon et al. Jan 2012 B1
8214612 Natanzon Jul 2012 B1
8250149 Marco et al. Aug 2012 B2
8271441 Natanzon et al. Sep 2012 B1
8271447 Natanzon et al. Sep 2012 B1
8332687 Natanzon et al. Dec 2012 B1
8335761 Natanzon Dec 2012 B1
8335771 Natanzon et al. Dec 2012 B1
8341115 Natanzon Dec 2012 B1
8370648 Natanzon Feb 2013 B1
8380885 Natanzon Feb 2013 B1
8392680 Natanzon et al. Mar 2013 B1
8429362 Natanzon et al. Apr 2013 B1
8433869 Natanzon et al. Apr 2013 B1
8438135 Natanzon et al. May 2013 B1
8464101 Natanzon et al. Jun 2013 B1
8478955 Natanzon et al. Jul 2013 B1
8495304 Natanzon et al. Jul 2013 B1
8510279 Natanzon et al. Aug 2013 B1
8521691 Natanzon Aug 2013 B1
8521694 Natanzon Aug 2013 B1
8543609 Natanzon Sep 2013 B1
8583885 Natanzon Nov 2013 B1
8600945 Natanzon et al. Dec 2013 B1
8601085 Ives et al. Dec 2013 B1
8627012 Derbeko et al. Jan 2014 B1
8683592 Dotan et al. Mar 2014 B1
8694700 Natanzon et al. Apr 2014 B1
8706700 Natanzon et al. Apr 2014 B1
8712962 Natanzon et al. Apr 2014 B1
8719497 Don et al. May 2014 B1
8725691 Natanzon May 2014 B1
8725692 Natanzon et al. May 2014 B1
8726066 Natanzon May 2014 B1
8738813 Natanzon et al. May 2014 B1
8745004 Natanzon et al. Jun 2014 B1
8751828 Raizen et al. Jun 2014 B1
8769336 Natanzon et al. Jul 2014 B1
8805786 Natanzon Aug 2014 B1
8806161 Natanzon Aug 2014 B1
8825848 Dotan et al. Sep 2014 B1
8832399 Natanzon et al. Sep 2014 B1
8850143 Natanzon Sep 2014 B1
8850144 Natanzon et al. Sep 2014 B1
8862546 Natanzon et al. Oct 2014 B1
8892835 Natanzon et al. Nov 2014 B1
8898112 Natanzon et al. Nov 2014 B1
8898409 Natanzon et al. Nov 2014 B1
8898515 Natanzon Nov 2014 B1
8898519 Natanzon et al. Nov 2014 B1
8914595 Natanzon Dec 2014 B1
8924668 Natanzon Dec 2014 B1
8930500 Marco et al. Jan 2015 B2
8930947 Derbeko et al. Jan 2015 B1
8935498 Natanzon Jan 2015 B1
8949180 Natanzon et al. Feb 2015 B1
8954673 Natanzon et al. Feb 2015 B1
8954796 Cohen et al. Feb 2015 B1
8959054 Natanzon Feb 2015 B1
8977593 Natanzon et al. Mar 2015 B1
8977826 Meiri et al. Mar 2015 B1
8996460 Frank et al. Mar 2015 B1
8996461 Natanzon et al. Mar 2015 B1
8996827 Natanzon Mar 2015 B1
9003138 Natanzon et al. Apr 2015 B1
9026696 Natanzon et al. May 2015 B1
9031913 Natanzon May 2015 B1
9032160 Natanzon et al. May 2015 B1
9037818 Natanzon et al. May 2015 B1
9063994 Natanzon et al. Jun 2015 B1
9069479 Natanzon Jun 2015 B1
9069709 Natanzon et al. Jun 2015 B1
9081754 Natanzon et al. Jul 2015 B1
9081842 Natanzon et al. Jul 2015 B1
9087008 Natanzon Jul 2015 B1
9087112 Natanzon et al. Jul 2015 B1
9104529 Derbeko et al. Aug 2015 B1
9110914 Frank et al. Aug 2015 B1
9116811 Derbeko et al. Aug 2015 B1
9128628 Natanzon et al. Sep 2015 B1
9128855 Natanzon et al. Sep 2015 B1
9134914 Derbeko et al. Sep 2015 B1
9135119 Natanzon et al. Sep 2015 B1
9135120 Natanzon Sep 2015 B1
9146878 Cohen et al. Sep 2015 B1
9152339 Cohen et al. Oct 2015 B1
9152578 Saad et al. Oct 2015 B1
9152814 Natanzon Oct 2015 B1
9158578 Derbeko et al. Oct 2015 B1
9158630 Natanzon Oct 2015 B1
9160526 Raizen et al. Oct 2015 B1
9177670 Derbeko et al. Nov 2015 B1
9189339 Cohen et al. Nov 2015 B1
9189341 Natanzon et al. Nov 2015 B1
9201736 Moore et al. Dec 2015 B1
9223659 Natanzon et al. Dec 2015 B1
9225529 Natanzon et al. Dec 2015 B1
9235481 Natanzon et al. Jan 2016 B1
9235524 Derbeko et al. Jan 2016 B1
9235632 Natanzon Jan 2016 B1
9244997 Natanzon et al. Jan 2016 B1
9256605 Natanzon Feb 2016 B1
9274718 Natanzon et al. Mar 2016 B1
9275063 Natanzon Mar 2016 B1
9286052 Solan et al. Mar 2016 B1
9305009 Bono et al. Apr 2016 B1
9323750 Natanzon et al. Apr 2016 B2
9330155 Bono et al. May 2016 B1
9336094 Wolfson et al. May 2016 B1
9336230 Natanzon May 2016 B1
9367260 Natanzon Jun 2016 B1
9378096 Erel et al. Jun 2016 B1
9378219 Bono et al. Jun 2016 B1
9378261 Bono et al. Jun 2016 B1
9383937 Frank et al. Jul 2016 B1
9389800 Natanzon et al. Jul 2016 B1
9405481 Cohen et al. Aug 2016 B1
9405684 Derbeko et al. Aug 2016 B1
9405765 Natanzon Aug 2016 B1
9411535 Shemer et al. Aug 2016 B1
9459804 Natanzon et al. Oct 2016 B1
9460028 Raizen et al. Oct 2016 B1
9471579 Natanzon Oct 2016 B1
9477407 Marshak et al. Oct 2016 B1
9501542 Natanzon Nov 2016 B1
9507732 Natanzon et al. Nov 2016 B1
9507845 Natanzon et al. Nov 2016 B1
9514138 Natanzon et al. Dec 2016 B1
9524218 Veprinsky et al. Dec 2016 B1
9529885 Natanzon et al. Dec 2016 B1
9535800 Natanzon et al. Jan 2017 B1
9535801 Natanzon et al. Jan 2017 B1
9547459 Benhanokh et al. Jan 2017 B1
9547591 Natanzon et al. Jan 2017 B1
9552405 Moore et al. Jan 2017 B1
9557921 Cohen et al. Jan 2017 B1
9557925 Natanzon Jan 2017 B1
9563517 Natanzon et al. Feb 2017 B1
9563684 Natanzon et al. Feb 2017 B1
9575851 Natanzon et al. Feb 2017 B1
9575857 Natanzon Feb 2017 B1
9575894 Natanzon et al. Feb 2017 B1
9582382 Natanzon et al. Feb 2017 B1
9588703 Natanzon et al. Mar 2017 B1
9588847 Natanzon et al. Mar 2017 B1
9594822 Natanzon et al. Mar 2017 B1
9600377 Cohen et al. Mar 2017 B1
9619255 Natanzon Apr 2017 B1
9619256 Natanzon et al. Apr 2017 B1
9619264 Natanzon et al. Apr 2017 B1
9619543 Natanzon et al. Apr 2017 B1
9632881 Natanzon Apr 2017 B1
9639295 Natanzon et al. May 2017 B1
9639383 Natanzon May 2017 B1
9639592 Natanzon et al. May 2017 B1
9652333 Bournival et al. May 2017 B1
9658929 Natanzon et al. May 2017 B1
9659074 Natanzon et al. May 2017 B1
9665305 Natanzon et al. May 2017 B1
9668704 Fuimaono et al. Jun 2017 B2
9672117 Natanzon et al. Jun 2017 B1
9678680 Natanzon et al. Jun 2017 B1
9678728 Shemer et al. Jun 2017 B1
9684576 Natanzon et al. Jun 2017 B1
9690504 Natanzon et al. Jun 2017 B1
9696939 Frank et al. Jul 2017 B1
9710177 Natanzon Jul 2017 B1
9720618 Panidis et al. Aug 2017 B1
9722788 Natanzon et al. Aug 2017 B1
9727429 Moore et al. Aug 2017 B1
9733969 Derbeko et al. Aug 2017 B2
9737111 Lustik Aug 2017 B2
9740572 Natanzon et al. Aug 2017 B1
9740573 Natanzon Aug 2017 B1
9740880 Natanzon et al. Aug 2017 B1
9749300 Cale et al. Aug 2017 B1
9772789 Natanzon et al. Sep 2017 B1
9798472 Natanzon et al. Oct 2017 B1
9798490 Natanzon Oct 2017 B1
9804934 Natanzon et al. Oct 2017 B1
9811431 Natanzon et al. Nov 2017 B1
9817606 Byrne Nov 2017 B1
9823865 Natanzon et al. Nov 2017 B1
9823973 Natanzon Nov 2017 B1
9832261 Don et al. Nov 2017 B2
9846698 Panidis et al. Dec 2017 B1
9875042 Natanzon et al. Jan 2018 B1
9875162 Panidis et al. Jan 2018 B1
9880777 Bono et al. Jan 2018 B1
9881014 Bono et al. Jan 2018 B1
9910620 Veprinsky et al. Mar 2018 B1
9910621 Golan et al. Mar 2018 B1
9910735 Natanzon Mar 2018 B1
9910739 Natanzon et al. Mar 2018 B1
9917854 Natanzon et al. Mar 2018 B2
9921955 Derbeko et al. Mar 2018 B1
9933957 Cohen et al. Apr 2018 B1
9934302 Cohen et al. Apr 2018 B1
9940205 Natanzon Apr 2018 B2
9940460 Derbeko et al. Apr 2018 B1
9946649 Natanzon et al. Apr 2018 B1
9959061 Natanzon et al. May 2018 B1
9965306 Natanzon et al. May 2018 B1
9990256 Natanzon Jun 2018 B1
9996539 Natanzon Jun 2018 B1
10007626 Saad et al. Jun 2018 B1
10019194 Baruch et al. Jul 2018 B1
10025931 Natanzon et al. Jul 2018 B1
10031675 Veprinsky et al. Jul 2018 B1
10031690 Panidis et al. Jul 2018 B1
10031692 Elron et al. Jul 2018 B2
10031703 Natanzon et al. Jul 2018 B1
10037251 Bono et al. Jul 2018 B1
10042579 Natanzon Aug 2018 B1
10042751 Veprinsky et al. Aug 2018 B1
10055146 Natanzon et al. Aug 2018 B1
10055148 Natanzon et al. Aug 2018 B1
10061666 Natanzon et al. Aug 2018 B1
10067694 Natanzon et al. Sep 2018 B1
10067837 Natanzon et al. Sep 2018 B1
20140032957 Beeston Jan 2014 A1
20140324774 Chen Oct 2014 A1
20160036909 Joshi Feb 2016 A1
20160292250 Chen Oct 2016 A1