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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 02/06/2026 has been entered. Claims 1-5,7-12,14-19,21-26,28-32 have been examined. Claims 6,13,20,27 are cancelled. Claim 29 -32 are new.
Response to Arguments
Applicant’s arguments, see Remarks – Pages 11-15 filed on 02/06/2026, with respect to the rejections of claims 1,8, 15, 22, under 103 have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground of rejection is made in view of Calme.
With regards to 112 (f),
With regards to 112 (f), Applicant argues that the claims do not invoke 112 (f). The examiner respectfully disagrees. The claims 22 -26, 28, 32 recite “ a computing device configured to …” and “ a first device configured to”. The claim limitations use generic placeholder coupled with functional language without reciting sufficient structure to achieve the function. The term used a substitute for “means” that is generic placeholder. The generic placeholder “device” is modified by functional language linked by a linking word (configured). The generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function. Therefore, the claim interpretation for 112 (f) is maintained.
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 22-26,28,32 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.
Such claim limitations are
“ computing device is configured to receive/determine/send” as recited in claim 22
“ first device is configured to send/receive." as recited in claim 22
“ computing device is further configured to determine ” as recited in claim 23,25
“ computing device is further configured to determine ” as recited in claim 24
“ computing device is configured to determine ” as recited in claim 32
A review of the specification shows that the following appears to be the corresponding structure described in the specification for the 35 U.S.C 112 (f) or pre-AIA 35 U.S.C 112 sixth paragraph limitation.
“ computing device is configured to receive/determine/send” Fig.5, ¶ 0091-0092, ¶ 0097, ¶ 0025, ¶ 0027,
“ first device is configured to send/receive." Fig.5, ¶ 0091-0092, ¶ 0097, ¶ 0025. ¶ 0055, ¶ 0022
“ computing device is further configured to determine ” Fig.5, ¶ 0091-0092, ¶ 0097, ¶ 0025. ¶ 0020 -0025
“ computing device is further configured to determine ” Fig.5, ¶ 0091-0092¶,0097, ¶ 0020 -0025
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 29-32 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claims contain subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for pre-AIA the inventor(s), at the time the application was filed, had possession of the claimed invention.
Regarding claims 29-32, the claims recite “determining a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations, or a codec complexity and resolution complexity.,”.
The specification does not support the claim limitation as indicated above. The closest recitation in the published specification US 2023/0283659 A1 stated:
¶0041- The levels of complexity can relate to processing complexity, data complexity (e.g., resolution, bit rate), processing cost (e.g., cost to process a type of communication session
¶0062 - The session description data can comprise parameters (e. g., proposed parameters, initialization parameters) for the communication session. The parameters can specify values for codecs, protocols, protocol versions, modes, routes, a resolution, a bit rate, a format, and/or the like ).
Therefore, the above specification does not describe “determining a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations….”.
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—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 following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 32 is rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor, or for pre-AIA the applicant regards as the invention.
Claim limitation “computing device is configured to determine” as recited in claim 32 invokes 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. However, the written description fails to disclose the corresponding structure, material, or acts for performing the entire claimed function and to clearly link the structure, material, or acts to the function. The closest analogous recitations in applicant’s published specification for above recitation is in Fig.5, ¶0025, ¶ 0032, ¶ 0041, ¶0062, ¶0094. However, these citations do not clearly identify the corresponding structure of the claimed means and, as a result; the examiner is unable to ascertain metes and bounds of the claim.
Applicant may:
(a) Amend the claim so that the claim limitation will no longer be interpreted as a limitation under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph;
(b) Amend the written description of the specification such that it expressly recites what structure, material, or acts perform the entire claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(c) Amend the written description of the specification such that it clearly links the structure, material, or acts disclosed therein to the function recited in the claim, without introducing any new matter (35 U.S.C. 132(a)).
If applicant is of the opinion that the written description of the specification already implicitly or inherently discloses the corresponding structure, material, or acts and clearly links them to the function so that one of ordinary skill in the art would recognize what structure, material, or acts perform the claimed function, applicant should clarify the record by either:
(a) Amending the written description of the specification such that it expressly recites the corresponding structure, material, or acts for performing the claimed function and clearly links or associates the structure, material, or acts to the claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(b) Stating on the record what the corresponding structure, material, or acts, which are implicitly or inherently set forth in the written description of the specification, perform the claimed function. For more information, see 37 CFR 1.75(d) and MPEP §§ 608.01(o) and 2181.
Claim Rejections - 35 USC § 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 1-5,7-12,14-19,21-26,28-32 are rejected under 35 U.S.C. 103 as being unpatentable over Li et al. Publication No. CN105959399 ( Li hereinafter) in view of Calme et al. Publication No. US 2015/0172324 A1 ( Calme hereinafter).
Regarding claim 1,
Li teaches a method comprising:
receiving, by a computing device and from a first device, a request for a communication session with a second device ( Page 7 - the two terminals that perform communication may send a session description protocol to the Proxy server before the communication, and the session description protocol may include a codec type used by the terminal. The proxy server can forward the session description protocol to the call controller, and the call controller can receive the session description protocol of the target session, parse the session description protocol, obtain the codec type) .
based on a complexity of encoding data associated with the communication session, determining one or more network devices to manage the communication session between the first device and the second device (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
sending, to a device, a message that causes the device to communicate via the one or more network devices for the communication session ( Page 16 -after the call controller determines the target virtual server group, the first input and output controller may send a reassignment instruction corresponding to the target session, where the reassignment instruction may carry the IP address and port information of the target virtual server group. The first input output controller can establish a correspondence between the target virtual server group and the target session. The call controller may further send a reassignment instruction corresponding to the target session to the second input/output controller, where the reassignment instruction may carry the IP address and port information of the target virtual server group, and the second input/output controller may also establish a target. Correspondence between the virtual server group and the target session for subsequent processing)
However, Li does not explicitly teach
sending, by the computing device and to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session
Calme teaches
sending, by the computing device and to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to provide a methodology and mechanism to redistribute authorized incoming call traffic across multiple local servers (Calme – ¶ 0004)
Regarding claim 2,
Li further teaches
based on the request, determining the complexity of encoding the data associated with the communication session ( Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 3,
Li further teaches
determining, based on the request, session description data associated with the communication session, wherein the complexity of encoding the data associated with the communication session is determined based on the session description data (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 4,
Li further teaches
determine one or more rules associate types of data with corresponding levels of complexity (Page 4 &5 - Based on the algorithm, packets with less complexity (that is, the average packet processing duration is shorter and the mean square error is smaller) can be allocated to a virtual server group with a smaller group number, which makes the algorithm more complex (i.e., A packet with a longer average packet processing duration or a larger mean square error is assigned to a virtual server group with a larger group number - Determining, by the codec server, a first codec complexity corresponding to the target session according to a codec type corresponding to the target session; The codec server determines a target virtual server group corresponding to the first codec complexity according to a correspondence between a codec complexity and a virtual server group stored in advance – Page 8 - After the call controller determines the codec type of the target session, the complexity of the codec type can be obtained, and then the complexity of the codec type can be used as the first codec complexity corresponding to the target session. The call controller may use the resolution corresponding to the sender as the resolution corresponding to the target session, or may use the resolution corresponding to the receiver as the resolution corresponding to the target session. Correspondingly, the complexity of the resolution can be quantized to obtain the complexity of each resolution, and the specific quantization method can also adopt the quantization method in the prior art. The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session).
Regarding claim 5,
Li does not explicitly teach
wherein the request comprises a session initiation protocol invite message
However, Calme teaches
wherein the request comprises a session initiation protocol invite message (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to utilize the invite message in order to provide a standardized way to set up the session parameters, including details like the caller and callee information, desired media type, all within a single message format.
Regarding claim 7,
Li further teaches
wherein determining the one or more network devices comprises determining the one or more network devices based on the one or more network devices being associated with a pool of network devices assigned to process communication sessions associated with the complexity of encoding the data associated with the communication session. (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 8,
Li teaches an apparatus comprising:
one or more processors; and memory storing processor-executable instructions that, when executed by the one or more processors, cause the apparatus to: receive, from a first device, a request for a communication session with a second device ( Page 7 - the two terminals that perform communication may send a session description protocol to the Proxy server before the communication, and the session description protocol may include a codec type used by the terminal. The proxy server can forward the session description protocol to the call controller, and the call controller can receive the session description protocol of the target session, parse the session description protocol, obtain the codec type).
Based on a complexity of encoding data associated with the communication session, determine one or more network devices to manage the communication session between the first device and the second device (Pages 24&25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
send, to a device, a message that causes the device to communicate via the one or more network devices for the communication session( Page 16 -after the call controller determines the target virtual server group, the first input and output controller may send a reassignment instruction corresponding to the target session, where the reassignment instruction may carry the IP address and port information of the target virtual server group. The first input output controller can establish a correspondence between the target virtual server group and the target session. The call controller may further send a reassignment instruction corresponding to the target session to the second input/output controller, where the reassignment instruction may carry the IP address and port information of the target virtual server group, and the second input/output controller may also establish a target. Correspondence between the virtual server group and the target session for subsequent processing)
However, Li does not explicitly teach
send, by the computing device and to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session
Calme teaches
send to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to provide a methodology and mechanism to redistribute authorized incoming call traffic across multiple local servers (Calme – ¶ 0004)
Regarding claim 9,
Li further teaches
wherein the processor-executable instructions, when executed by the one or more processors, further cause the apparatus to, based on the request, determining the complexity of encoding the data associated with the communication session ( Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 10,
Li further teaches
wherein the processor-executable instructions, when executed by the one or more processors, further cause the apparatus to, determine, based on the request, session description data associated with the communication session, and wherein the processor-executable instructions that, when executed by the one or more processors, cause the apparatus to determine the complexity of encoding the data associated with the communication session, further cause the apparatus to determine the complexity of the communication session \based on the session description data(Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 11,
Li further teaches
wherein the processor-executable instructions, when executed by the one or more processors, further cause the apparatus to, determine one or more rules associate types of data with corresponding levels of complexity (Page 4 &5 - Based on the algorithm, packets with less complexity (that is, the average packet processing duration is shorter and the mean square error is smaller) can be allocated to a virtual server group with a smaller group number, which makes the algorithm more complex (i.e., A packet with a longer average packet processing duration or a larger mean square error is assigned to a virtual server group with a larger group number - Determining, by the codec server, a first codec complexity corresponding to the target session according to a codec type corresponding to the target session; The codec server determines a target virtual server group corresponding to the first codec complexity according to a correspondence between a codec complexity and a virtual server group stored in advance – Page 8 - After the call controller determines the codec type of the target session, the complexity of the codec type can be obtained, and then the complexity of the codec type can be used as the first codec complexity corresponding to the target session. The call controller may use the resolution corresponding to the sender as the resolution corresponding to the target session, or may use the resolution corresponding to the receiver as the resolution corresponding to the target session. Correspondingly, the complexity of the resolution can be quantized to obtain the complexity of each resolution, and the specific quantization method can also adopt the quantization method in the prior art. The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session).
Regarding claim 12,
Li does not explicitly teach
wherein the request comprises a session initiation protocol invite message
However, Calme teaches
wherein the request comprises a session initiation protocol invite message (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to utilize the invite message in order to provide a standardized way to set up the session parameters, including details like the caller and callee information, desired media type, all within a single message format.
Regarding claim 14,
Li further teaches
determine the one or more network devices comprises determining the one or more network devices based on the one or more network devices being associated with a pool of network devices assigned to process communication sessions associated with the complexity of encoding the data associated with the communication session. (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 15,
Li teaches one or more non-transitory computer-readable media storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to:
receive, from a first device, a request for a communication session with a second ( Page 7 - the two terminals that perform communication may send a session description protocol to the Proxy server before the communication, and the session description protocol may include a codec type used by the terminal. The proxy server can forward the session description protocol to the call controller, and the call controller can receive the session description protocol of the target session, parse the session description protocol, obtain the codec type) .
Based on a complexity of encoding data associated with the communication session, determine one or more network devices to manage the communication session between the first device and the second device (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
send, to a device, a message that causes the device to communicate via the one or more network devices for the communication session( Page 16 -after the call controller determines the target virtual server group, the first input and output controller may send a reassignment instruction corresponding to the target session, where the reassignment instruction may carry the IP address and port information of the target virtual server group. The first input output controller can establish a correspondence between the target virtual server group and the target session. The call controller may further send a reassignment instruction corresponding to the target session to the second input/output controller, where the reassignment instruction may carry the IP address and port information of the target virtual server group, and the second input/output controller may also establish a target. Correspondence between the virtual server group and the target session for subsequent processing)
However, Li does not explicitly teach
send, to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session
Calme teaches
send to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to provide a methodology and mechanism to redistribute authorized incoming call traffic across multiple local servers (Calme – ¶ 0004)
Regarding claim 16,
Li further teaches
wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to, based on the request, determining the complexity of encoding the data associated with the communication session ( Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 17,
Li further teaches
wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to determine, based on the request, session description data associated with the communication session, and wherein the processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to determine the complexity of the communication session, further cause the at least one processor to determine the complexity of encoding the data associated with the communication session based on the session description data. ( Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 18,
Li further teaches
wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to determine one or more rules associate types of data with corresponding levels of complexity (Page 4 &5 - Based on the algorithm, packets with less complexity (that is, the average packet processing duration is shorter and the mean square error is smaller) can be allocated to a virtual server group with a smaller group number, which makes the algorithm more complex (i.e., A packet with a longer average packet processing duration or a larger mean square error is assigned to a virtual server group with a larger group number - Determining, by the codec server, a first codec complexity corresponding to the target session according to a codec type corresponding to the target session; The codec server determines a target virtual server group corresponding to the first codec complexity according to a correspondence between a codec complexity and a virtual server group stored in advance – Page 8 - After the call controller determines the codec type of the target session, the complexity of the codec type can be obtained, and then the complexity of the codec type can be used as the first codec complexity corresponding to the target session. The call controller may use the resolution corresponding to the sender as the resolution corresponding to the target session, or may use the resolution corresponding to the receiver as the resolution corresponding to the target session. Correspondingly, the complexity of the resolution can be quantized to obtain the complexity of each resolution, and the specific quantization method can also adopt the quantization method in the prior art. The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session).
Regarding claim 19,
Li does not explicitly teach
wherein the request comprises a session initiation protocol invite message
However, Calme teaches
wherein the request comprises a session initiation protocol invite message (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to utilize the invite message in order to provide a standardized way to set up the session parameters, including details like the caller and callee information, desired media type, all within a single message format.
Regarding claim 21,
Li further teaches
wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor determining the one or more network devices comprises determining the one or more network devices based on the one or more network devices being associated with a pool of network devices assigned to process communication sessions associated with the complexity of the communication session.( Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 22,
Li teaches a system comprising:
a computing device configured to receive, from a first device, a request for a communication session with a second device, wherein the first device configured to send the request for the communication session. ( Page 7 - the two terminals that perform communication may send a session description protocol to the Proxy server before the communication, and the session description protocol may include a codec type used by the terminal. The proxy server can forward the session description protocol to the call controller, and the call controller can receive the session description protocol of the target session, parse the session description protocol, obtain the codec type) .
based on a complexity of encoding data associated with the communication session, determine one or more network devices to manage the communication session between the first device and the second device (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
a computing device configured to send, to a device, a message that causes the device to communicate via the one or more network devices for the communication session and a device receiving the message ( Page 16 -after the call controller determines the target virtual server group, the first input and output controller may send a reassignment instruction corresponding to the target session, where the reassignment instruction may carry the IP address and port information of the target virtual server group. The first input output controller can establish a correspondence between the target virtual server group and the target session. The call controller may further send a reassignment instruction corresponding to the target session to the second input/output controller, where the reassignment instruction may carry the IP address and port information of the target virtual server group, and the second input/output controller may also establish a target. Correspondence between the virtual server group and the target session for subsequent processing)
However, Li does not explicitly teach
a computing device configured to send, to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session, and first device receiving the redirect message
Calme teaches
a computing device configured to send, to the first device, a redirect message that causes the first device to communicate via the one or more network devices for the communication session and first device receiving the redirect message (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to provide a methodology and mechanism to redistribute authorized incoming call traffic across multiple local servers (Calme – ¶0004)
Regarding claim 23,
Li further teaches
wherein the computing device is further configured to, based on the request, determining the complexity of encoding data associated with the communication session (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 24,
Li further teaches
wherein the computing device is further configured to determine, based on the request, session description data associated with the communication session, and wherein to determine the complexity of the communication session, further cause the at least one processor to determine the complexity of encoding data associated with the communication session based on the session description data. (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 25,
Li further teaches
determine one or more rules associate types of data with corresponding levels of complexity (Page 4 &5 - Based on the algorithm, packets with less complexity (that is, the average packet processing duration is shorter and the mean square error is smaller) can be allocated to a virtual server group with a smaller group number, which makes the algorithm more complex (i.e., A packet with a longer average packet processing duration or a larger mean square error is assigned to a virtual server group with a larger group number - Determining, by the codec server, a first codec complexity corresponding to the target session according to a codec type corresponding to the target session; The codec server determines a target virtual server group corresponding to the first codec complexity according to a correspondence between a codec complexity and a virtual server group stored in advance – Page 8 - After the call controller determines the codec type of the target session, the complexity of the codec type can be obtained, and then the complexity of the codec type can be used as the first codec complexity corresponding to the target session. The call controller may use the resolution corresponding to the sender as the resolution corresponding to the target session, or may use the resolution corresponding to the receiver as the resolution corresponding to the target session. Correspondingly, the complexity of the resolution can be quantized to obtain the complexity of each resolution, and the specific quantization method can also adopt the quantization method in the prior art. The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session).
Regarding claim 26,
Li does not explicitly teach
wherein the request comprises a session initiation protocol invite message
However, Calme teaches
wherein the request comprises a session initiation protocol invite message (¶ 0005 - an apparatus comprises a redirection server and a set of target servers for further processing of redirected load; the redirection server comprising a processor and an associated memory. The processor is configured to receive a first Session Initiation Protocol (SIP) INVITE request from a requestor, determine a first target server of the set of target servers, the first target server for further processing associated with the first SIP INVITE request, and forward a redirection response to the requestor, the redirection response including Universal Resource Identifiers (URis) indicating the first target server and a Redirection Authorization Key (RAK)).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Li to include the teachings of Calme. The motivation to do so is to allow the system to utilize the invite message in order to provide a standardized way to set up the session parameters, including details like the caller and callee information, desired media type, all within a single message format.
Regarding claim 28,
Li further teaches
wherein to determine the one or more network devices comprises determining the one or more network devices based on the one or more network devices being associated with a pool of network devices assigned to process communication sessions associated with the complexity of encoding data associated with the communication session (Pages 24,25 -the call controller may determine, according to the session description protocol corresponding to each session received in the preset statistics period, the corresponding codec complexity of each session in the preset statistical period, and store the information. For the audio session, the corresponding codec complexity may be determined in the foregoing manner. For the video session, the foregoing mode 2 may be used to determine the corresponding codec complexity. The call controller may determine a maximum second codec complexity and a minimum third codec complexity in the codec complexity corresponding to each session, and further, according to the first codec complexity, the second codec complexity, The third code decoding complexity and the preset number of virtual server groups determine the target virtual server group corresponding to the first codec complexity - the virtual server group is classified according to the codec type. After the target session is established, the packet of the target session is allocated to the corresponding target virtual server group for encoding and decoding according to the codec type corresponding to the target session).
Regarding claim 29,
Li further teaches
wherein determining the one or more network devices comprising determining a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations, or a codec complexity and resolution complexity (Page 2 - Determining, by the codec server, a first mean square error of a packet processing duration of the target session according to a first average packet processing duration of the target session - Determining, by the codec server, the first virtual server group corresponding to the first average packet processing duration according to the pre-stored average packet processing duration and the virtual server group correspondence, according to the pre-stored packet processing duration Corresponding relationship between the variance and the virtual server group, determining a corresponding second virtual server group of the first mean square error – Page 8 - The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session. The first codec complexity ).
Regarding claim 30,
Li further teaches
wherein the processor-executable instructions that, when executed by the one or more processors, cause the apparatus to determine the one or more network devices, cause the apparatus to determine a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations, or a codec complexity and resolution complexity (Page 2 - Determining, by the codec server, a first mean square error of a packet processing duration of the target session according to a first average packet processing duration of the target session - Determining, by the codec server, the first virtual server group corresponding to the first average packet processing duration according to the pre-stored average packet processing duration and the virtual server group correspondence, according to the pre-stored packet processing duration Corresponding relationship between the variance and the virtual server group, determining a corresponding second virtual server group of the first mean square error – Page 8 - The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session. The first codec complexity ).
Regarding claim 31,
Li further teaches
wherein the processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to determine the one or more network devices, cause the at least one processor to determine a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations, or a codec complexity and resolution complexity. (Page 2 - Determining, by the codec server, a first mean square error of a packet processing duration of the target session according to a first average packet processing duration of the target session - Determining, by the codec server, the first virtual server group corresponding to the first average packet processing duration according to the pre-stored average packet processing duration and the virtual server group correspondence, according to the pre-stored packet processing duration Corresponding relationship between the variance and the virtual server group, determining a corresponding second virtual server group of the first mean square error – Page 8 - The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session. The first codec complexity ).
Regarding claim 32,
Li further teaches
wherein to determine the one or more network devices, the computing device is configured to determine a complexity metric based on at least one of: an average packet processing duration for the communication session, a mean square error of packet processing durations, or a codec complexity and resolution complexity (Page 2 - Determining, by the codec server, a first mean square error of a packet processing duration of the target session according to a first average packet processing duration of the target session - Determining, by the codec server, the first virtual server group corresponding to the first average packet processing duration according to the pre-stored average packet processing duration and the virtual server group correspondence, according to the pre-stored packet processing duration Corresponding relationship between the variance and the virtual server group, determining a corresponding second virtual server group of the first mean square error – Page 8 - The complexity corresponding to each codec type and the complexity corresponding to each resolution can be pre-stored in the call controller. After the call controller obtains the codec type and resolution of the target session, the complexity of the codec type of the target session and the complexity of the resolution of the target session can be determined, and then the product of the two can be calculated to obtain the target session. The first codec complexity ).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Kisel et al. Publication No. US 2007/0118618 A1 – ¶0030-¶0031
Ganesan et al. Publication No. US 2008/0084874 A1
Any inquiry concerning this communication or earlier communications from the examiner should be directed to YOUNES NAJI whose telephone number is (571)272-2659. The examiner can normally be reached Monday - Friday 8:30 AM -5: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.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Oscar A Louie can be reached on (571) 270-1684. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
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.
/YOUNES NAJI/Primary Examiner, Art Unit 2445