DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the America Invents Act (AIA ).
General Information Matter
Please note, the instant Non-Provisional application (18/815,338) under prosecution at the United States Patent and Trademark Office (USPTO) has been assigned to David Zarka (Examiner) in Art Unit 2449. To aid in correlating any papers for 18/815,338, all further correspondence regarding the instant application should be directed to the Examiner.
Information Disclosure Statement (IDS)
The IDSs filed August 29, 2024 each comply with the provisions of 37 C.F.R. §§ 1.97, 1.98 and MPEP § 609. The IDSs have been placed in the application file, and the information referred to therein has been considered.
Nonstatutory Double Patenting1
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s).2
A timely filed terminal disclaimer in compliance with 37 C.F.R. § 1.321(c) or § 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 C.F.R. § 1.321(b).
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
The ‘987 Patent and Zhang
Claims 1–6 and 10–15 are rejected on the ground of nonstatutory double patenting as being unpatentable over McKim (US 11,456,987 B1; filed May 7, 2021; the ‘987 Patent) in view of Zhang (CN 106487807 A; filed Nov. 18, 2016)3.
Regarding claims 1–6 and 10–15 of the instant App., although the conflicting claims are not identical, they are not patentably distinct from each other because:
Instant Application
the ‘987 Patent
Claim 1: A system for automatic IP address range allocation comprising:
one or more processors, one or more computer readable storage devices, and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size;
place the selected IP address range of the first size in a quarantine pool which includes a listing of IP addresses that are currently unavailable;
transmit, to the requestor computer device, the selected IP address range of the first size;
scan the quarantine pool to see if any IP address ranges have exceeded their expiration time; and
remove those IP address ranges from the quarantine pool that exceeded their expiration time.
Claim 1: A system for automatic IP address range allocation comprising:
one or more processors, one or more computer readable storage devices, and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size;
Claim 5: place the selected IP address range of the first size in a quarantine pool which includes a listing of IP addresses that are currently unavailable;
Claim 1: transmit, to the requestor computer device, the selected IP address range of the first size;
receive, from the requestor computer device, a second request for an IP address range of a second size,
wherein the second size includes a plurality of IP address ranges of the first size;
scan the availability map of IP addresses to detect the IP address range of the second size,
wherein the IP address range of the second size is a continuous set of a plurality of IP address ranges of the first size;
select the detected IP address range of the second size; and
transmit, to the requestor computer device, the selected IP address range of the second size.
Claim 2. The system of claim 1, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses does not include an unused section of a second size,
wherein the first size includes a plurality of IP address ranges of the second size; and
determine whether the availability map of IP addresses includes an unused section of a third size,
wherein the IP address range of the third size includes a plurality of IP address ranges of the second size.
Claim 6. The system of claim 5, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses does not include an unused section of the third size; and
Claim 5: wherein the first size includes a plurality of IP address ranges of the third size;
Claim 6. determine whether the availability map of IP addresses includes an unused section of a fourth size,
wherein the IP address range of the fourth size includes a plurality of IP address ranges of the third size.
Claim 3. The system of claim 2, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses includes an unused section of the third size;
divide the unused section of the third size into a plurality of sections including a selected section of the second size;
store the remaining sections of the plurality of sections in the availability map of IP addresses; and
transmit, to the requestor computer device, the selected section of the second size.
Claim 7. The system of claim 6, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses includes an unused section of the fourth size;
divide the unused section of the fourth size into a plurality of sections including a selected section of the third size;
store the remaining sections of the plurality of sections in the availability map of IP addresses;
place the selected section of the third size into the quarantine pool; and
transmit, to the requestor computer device, the selected section of the third size.
Claim 4. The system of claim 6, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses includes an unused section of the fourth size;
divide the unused section of the fourth size into a plurality of sections including a selected section of the third size;
store the remaining sections of the plurality of sections in the availability map of IP addresses;
place the selected section of the third size into the quarantine pool; and
transmit, to the requestor computer device, the selected section of the third size.
Claim 8. The system of claim 6, wherein the plurality of program instructions cause the one or more processors to:
determine that the availability map of IP addresses includes an unused section of the fourth size;
divide the unused section of the fourth size into a plurality of sections including a selected section of the third size;
store the remaining sections of the plurality of sections in the availability map of IP addresses;
place the selected section of the third size into the quarantine pool; and
transmit, to the requestor computer device, the selected section of the third size.
Claim 5. The system of claim 1, wherein the plurality of program instructions cause the one or more processors to:
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size; and
transmit, to the requestor computer device, the selected IP address range of the first size.
Claim 1.
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size;
transmit, to the requestor computer device, the selected IP address range of the first size;
Claim 6. The system of claim 1, wherein the plurality of program instructions cause the one or more processors to:
receive, from the requestor computer device, a request for an IP address range of a fourth size,
wherein the fourth size includes a plurality of IP address ranges of the first size;
scan the availability map of IP addresses to detect the IP address range of the fourth size,
wherein the IP address range of the fourth size is a continuous set of a plurality of IP address ranges of the first size;
select the detected IP address range of the fourth size; and
transmit, to the requestor computer device, the selected IP address range of the fourth size.
Claim 1.
receive, from the requestor computer device, a second request for an IP address range of a second size,
wherein the second size includes a plurality of IP address ranges of the first size;
scan the availability map of IP addresses to detect the IP address range of the second size,
wherein the IP address range of the second size is a continuous set of a plurality of IP address ranges of the first size;
select the detected IP address range of the second size; and
transmit, to the requestor computer device, the selected IP address range of the second size.
Claim 10. A computer implemented method for automatic IP address range allocation implemented using at least one processor, the method comprising:
storing, in one or more storage devices, an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receiving, from a requestor computer device, a request for an IP address range of the first size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size;
placing the selected IP address range of the first size in a quarantine pool which includes a listing of IP addresses that are currently unavailable;
transmitting, to the requestor computer device, the selected IP address range of the first size;
scanning the quarantine pool to see if any IP address ranges have exceeded their expiration time; and
removing those IP address ranges from the quarantine pool that exceeded their expiration time.
Claim 12. A computer implemented method for automatic IP address range allocation implemented using at least one processor, the method comprising:
storing, in one or more storage devices, an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receiving, from a requestor computer device, a request for an IP address range of the first size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size;
Claim 16: placing the selected IP address range of the first size in a quarantine pool which includes a listing of IP addresses that are currently unavailable;
Claim 12: transmitting, to the requestor computer device, the selected IP address range of the first size;
receiving, from the requestor computer device, a second request for an IP address range of a second size, wherein the second size includes a plurality of IP address ranges of the first size;
scanning the availability map of IP addresses to detect the IP address range of the second size, wherein the IP address range of the second size is a continuous set of a plurality of IP address ranges of the first size;
selecting the detected IP address range of the second size; and
transmitting, to the requestor computer device, the selected IP address range of the second size.
Claim 11. The method of claim 10 further comprising:
determining that the availability map of IP addresses does not include an unused section of a second size,
wherein the first size includes a plurality of IP address ranges of the second size; and
determining whether the availability map of IP addresses includes an unused section of a third size,
wherein the IP address range of the third size includes a plurality of IP address ranges of the second size.
Claim 17. The method of claim 16 further comprising:
determining that the IP availability map does not include an unused section of the third size; and
Claim 16: wherein the first size includes a plurality of IP address ranges of the third size;
determining whether the IP availability map includes an unused section of a fourth size,
wherein the IP address range of the fourth size includes a plurality of IP address ranges of the third size.
Claim 12. The method of claim 11 further comprising:
determining that the availability map of IP addresses includes an unused section of the third size;
dividing the unused section of the third size into a plurality of sections including a selected section of the second size;
storing the remaining sections of the plurality of sections in the availability map of IP addresses; and
transmitting, to the requestor computer device, the selected section of the second size.
Claim 18. The method of claim 17 further comprising:
determining that the IP availability map includes an unused section of the fourth size;
dividing the unused section of the fourth size into a plurality of sections including a selected section of the third size;
storing the remaining sections of the plurality of sections in the IP availability map;
placing the selected section of the third size into the quarantine pool; and
transmitting, to the requestor computer device, the selected section of the third size.
Claim 13. The method of claim 11 further comprising:
determining that the availability map of IP addresses does not include an unused section of the third size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size;
dividing the selected IP address range of the first size into a plurality of sections including a selected section of the second size;
storing the remaining sections of the plurality of sections in the availability map of IP addresses; and
transmitting, to the requestor computer device, the selected section of the second size.
Claim 19. The method of claim 17 further comprising:
determining that the IP availability map does not include an unused section of the fourth size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size;
dividing the selected IP address range of the first size into a plurality of sections including a selected section of the third size;
storing the remaining sections of the plurality of sections in the IP availability map;
storing the selected IP address range of the first size in the reserve pool;
placing the selected section of the third size in the quarantine pool; and
transmitting, to the requestor computer device, the selected section of the third size.
Claim 14. The method of claim 10 further comprising:
receiving, from a requestor computer device, a request for an IP address range of the first size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size; and
transmitting, to the requestor computer device, the selected IP address range of the first size.
Claim 12.
receiving, from a requestor computer device, a request for an IP address range of the first size;
selecting the next available IP address range of the first size based on the pointer;
moving the pointer to another available IP address range of the first size;
transmitting, to the requestor computer device, the selected IP address range of the first size;
Claim 15. The method of claim 10 further comprising:
receiving, from the requestor computer device, a request for an IP address range of a fourth size, wherein the fourth size includes a plurality of IP address ranges of the first size;
scanning the availability map of IP addresses to detect the IP address range of the fourth size, wherein the IP address range of the fourth size is a continuous set of a plurality of IP address ranges of the first size;
selecting the detected IP address range of the fourth size; and
transmitting, to the requestor computer device, the selected IP address range of the fourth size.
Claim 10.
receiving, from the requestor computer device, a second request for an IP address range of a second size, wherein the second size includes a plurality of IP address ranges of the first size;
scanning the availability map of IP addresses to detect the IP address range of the second size, wherein the IP address range of the second size is a continuous set of a plurality of IP address ranges of the first size;
selecting the detected IP address range of the second size; and
transmitting, to the requestor computer device, the selected IP address range of the second size.
Claim 19. A system for automatic IP address range allocation comprising:
one or more processors, one or more computer readable storage devices, and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size if the plurality of IP address ranges of the first size includes the next available IP address range of the first size;
place the selected IP address range of the first size in a quarantine pool which includes a listing of IP addresses that are currently unavailable; and
transmit, to the requestor computer device, the selected IP address range of the first size.
Claim 1. A system for automatic IP address range allocation comprising:
one or more processors, one or more computer readable storage devices, and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store an availability map of IP addresses including a pointer to a next available IP address range of a first size;
receive, from a requestor computer device, a request for an IP address range of the first size;
select the next available IP address range of the first size based on the pointer;
move the pointer to another available IP address range of the first size;
Claim 4. The system of claim 1, wherein the plurality of program instructions cause the one or more processors to
move the pointer to another available IP address range of the first size if the plurality of IP address ranges of the first size includes the next available IP address range of the first size.
Claim 1. transmit, to the requestor computer device, the selected IP address range of the first size;
receive, from the requestor computer device, a second request for an IP address range of a second size, wherein the second size includes a plurality of IP address ranges of the first size;
scan the availability map of IP addresses to detect the IP address range of the second size, wherein the IP address range of the second size is a continuous set of a plurality of IP address ranges of the first size;
select the detected IP address range of the second size; and
transmit, to the requestor computer device, the selected IP address range of the second size.
Regarding claim 1, claim 5 of the ‘987 Patent does not teach scan the quarantine pool to see if any IP address ranges have exceeded their expiration time; and remove those IP address ranges from the quarantine pool that exceeded their expiration time.
Zhang teaches scanning a list to see if any IP addresses have exceeded their expiration time; and remove those IP addresses from the list that exceeded their expiration time (“a time judging module for judging whether the source IP address in the white list exceeds a time threshold value, deleting module, used for when the source IP address exceeds the time threshold, deleting the source IP address.” at p. 2).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the quarantine pool from claim 5 of the ‘987 Patent to be scanned to see if any IP address ranges from claim 5 of the ‘987 Patent have exceeded their expiration time; and remove those IP address ranges from the quarantine pool that exceeded their expiration time as taught by Zhang to provide “a protecting method and device for domain name resolution.” Zhang 1.
Regarding claim 10, claim 16 of the ‘987 Patent does not teach scan the quarantine pool to see if any IP address ranges have exceeded their expiration time; and remove those IP address ranges from the quarantine pool that exceeded their expiration time.
Zhang teaches scanning a list to see if any IP addresses have exceeded their expiration time; and remove those IP addresses from the list that exceeded their expiration time (“a time judging module for judging whether the source IP address in the white list exceeds a time threshold value, deleting module, used for when the source IP address exceeds the time threshold, deleting the source IP address.” at p. 2).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the quarantine pool from claim 16 of the ‘987 Patent to be scanned to see if any IP address ranges have exceeded their expiration time; and remove those IP address ranges from the quarantine pool that exceeded their expiration time as taught by Zhang to provide “a protecting method and device for domain name resolution.” Zhang 1.
The ‘987 Patent, Zhang, and Borkar
Claims 7 and 16 are rejected on the ground of nonstatutory double patenting as being unpatentable over the ‘987 Patent in view of Zhang, and in further view of Borkar (US 2016/0301658 A1; filed Apr. 10, 2015).
Regarding claim 7, claim 5 of the ‘987 Patent does not teach wherein the first size is a continuous set of 256 IP addresses.
Borkar teaches a first size is a continuous set of 256 IP addresses (“the range of 192.168.1.0/24” at ¶ 31).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the first size from claim 5 of the ‘987 Patent to be a continuous set of 256 IP addresses as taught by Borkar “to more efficiently identify subnets (IP address ranges) containing IP addresses which reduces algorithmic and computational costs and which provides the same result set as existing methods in a much shorter period of time.” Borkar ¶ 35.
Regarding claim 16, claim 16 of the ‘987 Patent does not teach wherein the first size is a continuous set of 256 IP addresses.
Borkar teaches a first size is a continuous set of 256 IP addresses (“the range of 192.168.1.0/24” at ¶ 31).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the first size from claim 16 of the ‘987 Patent to be a continuous set of 256 IP addresses as taught by Borkar “to more efficiently identify subnets (IP address ranges) containing IP addresses which reduces algorithmic and computational costs and which provides the same result set as existing methods in a much shorter period of time.” Borkar ¶ 35.
The ‘987 Patent, Zhang, and Bello
Claims 8 and 17 are rejected on the ground of nonstatutory double patenting as being unpatentable over the ‘987 Patent in view of Zhang, and in further view of Bello et al. (US 9,396,138 B2; filed July 28, 2015).
Regarding claim 8, claim 5 of the ‘987 Patent does not teach wherein the plurality of program instructions cause the one or more processors to: determine a listing of IP address ranges that are currently in use; and update the availability map of IP addresses based on the listing of IP address ranges.
Bello teaches wherein a plurality of program instructions cause one or more processors (fig. 5, items 820, 920) to:
determine a listing of IP address ranges that are currently in use (“At step 204, allocation program 110 determines whether one of allocation groups 107A-I can satisfy the allocation request, without first setting the allocation lock to lock the allocation group” at 4:43–46; “Allocation program 110 determines whether the allocation group can satisfy the allocation request by calculating the free number of logical disk extents for the allocation group” at 4:59–62); and
update an availability map of IP addresses based on the listing of IP address ranges (fig. 2, items 204–208 and 4:39–5:40).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the claim 5 of the ‘987 Patent to determine a listing of IP address ranges that are currently in use and for the availability map of IP addresses from claim 5 of the ‘987 Patent to be updated based on the listing of IP address ranges as taught by Bello to prevent “unnecessary overhead for the file system when allocating and de-allocating disk blocks for its files.” Bello 1:53–53.
Regarding claim 17, claim 16 of the ‘987 Patent does not teach wherein the plurality of program instructions cause the one or more processors to: determine a listing of IP address ranges that are currently in use; and update the availability map of IP addresses based on the listing of IP address ranges.
Bello teaches wherein a plurality of program instructions cause one or more processors (fig. 5, items 820, 920) to:
determine a listing of IP address ranges that are currently in use (“At step 204, allocation program 110 determines whether one of allocation groups 107A-I can satisfy the allocation request, without first setting the allocation lock to lock the allocation group” at 4:43–46; “Allocation program 110 determines whether the allocation group can satisfy the allocation request by calculating the free number of logical disk extents for the allocation group” at 4:59–62); and
update an availability map of IP addresses based on the listing of IP address ranges (fig. 2, items 204–208 and 4:39–5:40).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention for the claim 16 of the ‘987 Patent to determine a listing of IP address ranges that are currently in use and for the availability map of IP addresses from claim 16 of the ‘987 Patent to be updated based on the listing of IP address ranges as taught by Bello to prevent “unnecessary overhead for the file system when allocating and de-allocating disk blocks for its files.” Bello 1:53–53.
Claim Rejections – 35 U.S.C. § 112
35 U.S.C. § 112(b)
The following is a quotation of 35 U.S.C. § 112(b): “The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.”
The MPEP recites “[d]uring examination, after applying the broadest reasonable interpretation consistent with the specification to the claim, if the metes and bounds of the claimed invention are not clear, the claim is indefinite and should be rejected.” MPEP § 2173.02(I) (citing In re Packard, 751 F.3d 1307, 1311 (Fed. Cir. 2014)). “For example, if the language of a claim, given its broadest reasonable interpretation, is such that a person of ordinary skill in the relevant art would read it with more than one reasonable interpretation, then a rejection under 35 U.S.C. 112(b) . . . is appropriate.” Id. See also id. § 2173.05(e)(discussing indefiniteness arising for terms lacking proper antecedent basis).
Claims 19 and 20 are rejected under § 112(b) as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor regards as the invention. In particular,
(i) claim 19, line 14, “the plurality of IP address ranges of the first size” lacks clear antecedent basis. The Examiner is uncertain whether the limitation refers to which combination of “a next available IP address range of a first size” at lines 7–8, the requested “IP address range of the first size” at lines 9–10, and “another IP address range of the first size” at line 13.
Claim 20, line 10 by analogy.
35 U.S.C. § 112(d)
The following is a quotation of 35 U.S.C. § 112(d):
Subject to subsection (e), a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
Claims 5 and 14 are rejected under 35 U.S.C. 112(d) as being of improper dependent form for failing to further limit the subject matter of the claim upon which it depends, or for failing to include all the limitations of the claim upon which it depends. Notably, claim 5 recites the same subject matter as recited in claim 1 and claim 14 recites the same subject matter as recited in claim 10.
Applicant may cancel the claim(s), amend the claim(s) to place the claim(s) in proper dependent form, rewrite the claim(s) in independent form, or present a sufficient showing that the dependent claim(s) complies with the statutory requirements.
Claim Rejections – 35 U.S.C. § 103
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.
Claims 19 and 20 are rejected under 35 U.S.C. § 103 as being obvious over Bello in view of Borkar, and in further view of Krishnan et al. (WO 2020/212998 A1; filed Apr. 17, 2019).
Regarding claim 19, while Bello teaches system (fig. 5, item 100) for automatic IP address range allocation (fig. 2) comprising:
one or more processors (fig. 5, items 820, 920), one or more computer readable storage devices (fig. 5, items 800, 830, 900), and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store an availability map (fig. 2, items 204–208 and 4:39–5:40; fig. 4, item 402) of logical disk extents (fig. 4, items 408A–J) including a pointer (fig. 4, pointer item 404) to a next available logical disk extent range (fig. 4, items 408A–H from T0 to T1) of a first size (“7 logical disk extents” at 7:14; fig. 4, items 408A–H from T0 to T1);
receive, from a requestor computer device, a request (fig. 2, item 202) for an logical disk extent range of the first size (“an allocation request requesting a number of logical disk extents” at 4:42–43; “7 logical disk extents” at 7:14; fig. 4, items 408A–H from T0 to T1);
select the next available logical disk extent range (fig. 4, items 408A–H from T0 to T1) of the first size (“7 logical disk extents” at 7:14) based on the pointer (the location of the pointer item 404 is at 408A at T0);
move the pointer (fig. 4, item 404 is moved from 408A to 408H at T0 to T1) to another available logical disk extent range (fig. 4, items 408H–B from T1 to T2) of the first size (“7 logical disk extents” at 7:14; fig. 4, items 408H–B from T1 to T2 is 7 logical disk extents) if the plurality of logical disk extent ranges of the first size (fig. 4, items 408A–H from T0 to T1; fig. 4, items 408H–B from T1 to T2) includes the next available logical disk extent range of the first size (fig. 4, items 408A–H from T0 to T1);
place the selected logical disk extent range of the first size in a quarantine pool (fig. 5, items 822, 824, 830, 936); and
transmit (at fig. 2, item 216), to the requestor computer device (fig. 5, item 100), the selected logical disk extent range (fig. 4, items 408A–H from T0 to T1) of the first size (“7 logical disk extents” at 7:14),
Bello does not teach (A) the logical disk extents being IP addresses (and thus a logical disk extent range being an IP address range); and (B) the quarantine pool including a listing of IP address that are currently unavailable.
(A)
Borkar teaches IP addresses (“192.168.10.12” and “192.168.0.0” at fig. 2, ¶ 3) and IP address ranges (“the IP address range expressed as 192.168.0.0/16 includes all IP addresses from 192.168.0.0 to 192.168.255.255” at ¶ 5; “the range of 192.168.1.0/24” at ¶ 31).
It would have been obvious to one of ordinary skill in the art before the filing date of the invention for Bello’s logical disk extents to be IP addresses and for Bello’s logical disk extent ranges to be IP address ranges as taught by Borkar “to more efficiently identify subnets (IP address ranges) containing IP addresses which reduces algorithmic and computational costs and which provides the same result set as existing methods in a much shorter period of time.” Borkar ¶ 35.
(B)
Krishnan teaches a listing of IP address that are currently unavailable (“a list of used/unavailable IP addresses, respectively, that are maintained by address allocator 122” at ¶ 46).
It would have been obvious to one of ordinary skill in the art before the filing date of the invention for Bello’s quarantine pool to include a listing of IP address that are currently unavailable as taught by Krishnan “to avoid duplicate network address allocation.” Krishnan ¶ 36.
Regarding claim 20, while Bello teaches a computer implemented method for automatic IP address range allocation (fig. 2) implemented using at least one processor (fig. 5, items 820, 920), the method comprising:
storing, in one or more storage devices, an availability map (fig. 2, items 204–208 and 4:39–5:40; fig. 4, item 402) of logical disk extents (fig. 4, items 408A–J) including a pointer (fig. 4, pointer item 404) to a next available logical disk extent range (fig. 4, items 408A–H from T0 to T1) of a first size (“7 logical disk extents” at 7:14; fig. 4, items 408A–H from T0 to T1);
receive, from a requestor computer device (fig. 5, item 100), a request (fig. 2, item 202) for a logical disk extent range of the first size (“an allocation request requesting a number of logical disk extents” at 4:42–43; “7 logical disk extents” at 7:14; fig. 4, items 408A–H from T0 to T1);
select the next available logical disk extent range (fig. 4, items 408A–H from T0 to T1) of the first size (“7 logical disk extents” at 7:14) based on the pointer (the location of the pointer item 404 is at 408A at T0);
move the pointer to another available logical disk extent range of the first size if 4 the plurality of logical disk extent ranges of the first size includes the next available logical disk extent range of the first size;
place the selected logical disk extent range of the first size in a quarantine pool (fig. 5, items 822, 824, 830, 936); and
transmit (at fig. 2, item 216), to the requestor computer device (fig. 5, item 100), the selected logical disk extent range (fig. 4, items 408A–H from T0 to T1) of the first size (“7 logical disk extents” at 7:14),
Bello does not teach (A) the logical disk extents being IP addresses (and thus a logical disk extent range being an IP address range); and (B) the quarantine pool including a listing of IP address that are currently unavailable.
(A)
Borkar teaches IP addresses (“192.168.10.12” and “192.168.0.0” at fig. 2, ¶ 3) and IP address ranges (“the IP address range expressed as 192.168.0.0/16 includes all IP addresses from 192.168.0.0 to 192.168.255.255” at ¶ 5; “the range of 192.168.1.0/24” at ¶ 31).
It would have been obvious to one of ordinary skill in the art before the filing date of the invention for Bello’s logical disk extents to be IP addresses and for Bello’s logical disk extent ranges to be IP address ranges as taught by Borkar “to more efficiently identify subnets (IP address ranges) containing IP addresses which reduces algorithmic and computational costs and which provides the same result set as existing methods in a much shorter period of time.” Borkar ¶ 35.
(B)
Krishnan teaches a listing of IP address that are currently unavailable (“a list of used/unavailable IP addresses, respectively, that are maintained by address allocator 122” at ¶ 46).
It would have been obvious to one of ordinary skill in the art before the filing date of the invention for Bello’s quarantine pool to include a listing of IP address that are currently unavailable as taught by Krishnan “to avoid duplicate network address allocation.” Krishnan ¶ 36.
Allowable Subject Matter
Claims 9 and 18 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. See MPEP §§ 608.01(n), 707.07(j).
Conclusion
The prior art made of record and not relied upon is considered pertinent to Applicant’s disclosure: US-12113769-B2.
Any inquiry concerning this communication or earlier communications from the Examiner should be directed to DAVID P. ZARKA whose telephone number is (703) 756-5746. The Examiner can normally be reached Monday–Friday from 9:30AM–6PM ET.
If attempts to reach the Examiner by telephone are unsuccessful, the Examiner’s supervisor, Vivek Srivastava, can be reached at (571) 272-7304. The fax phone number for the organization where this application or proceeding is assigned is (571) 273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://portal.uspto.gov/external/portal. Should you have questions about access to the Private PAIR system, contact the Electronic Business Center (EBC) at (866) 217-9197 (toll-free).
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.
/DAVID P ZARKA/PATENT EXAMINER, Art Unit 2449
1 The Examiner will determine whether Applicant’s reply to the nonstatutory double patenting rejection is compliant under 37 C.F.R. § 1.111(b). See MPEP § 804(I)(B)(1) (reciting
[a] complete response to a nonstatutory double patenting (NSDP) rejection is either a reply by applicant showing that the claims subject to the rejection are patentably distinct from the reference claims, or the filing of a terminal disclaimer in accordance with 37 CFR 1.321 in the pending application(s) with a reply to the Office action (see MPEP § 1490 for a discussion of terminal disclaimers). Such a response is required even when the nonstatutory double patenting rejection is provisional.
). In the event the reply is non-compliant under 37 C.F.R. § 1.111(b), the Examiner will issue a Notice of Non-Compliant Response.
2 See, e.g., In re Berg, 140 F.3d 1428 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046 (Fed. Cir. 1993); In re Longi, 759 F.2d 887 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937 (CCPA 1982); In re Vogel, 422 F.2d 438 (CCPA 1970); In re Thorington, 418 F.2d 528 (CCPA 1969).
3 The Examiner relies on an English translation of Zhang using CLARIVATE ANALYTICS.
4 The moving method-step (claim 20, lines 9–11) is conditional and, therefore, need not be satisfied to meet claim 20. See Ex parte Schulhauser, No. 2013-007847, 2016 WL 6277792, at *3–5 (PTAB Apr. 28, 2016) (precedential) (holding that in a method claim, a step reciting a condition precedent does not need to be performed if the condition precedent is not met) (available at https://www.uspto.gov/sites/default/files/documents/Ex%20parte%20Schulhauser%202016_04_28.pdf; last visited Jan. 27, 2026); see also MPEP § 2111.04(II) (citing Schulhauser).