Post

Replies

Boosts

Views

Activity

Network Extension performance issue
We have a scenario where a daemon process is generating lot of network operations which is nearly 250+ requests per seconds. Due to this the handleNewFlow() is not able to process the real browser/Application network operations in realtime and browser is getting timed out. This is resulting in all user network operations to be in waiting and finally timed out. Filter setting (We are capturing all the network operations):   let filterRules = ["0.0.0.0", "::"].map { address -> NEFilterRule in       let bothNetworkRule = NENetworkRule(remoteNetwork: nil,                          remotePrefix: 0,                          localNetwork: nil,                          localPrefix: 0,                          protocol: .any,                          direction: .any )       return NEFilterRule(networkRule: bothNetworkRule, action: .filterData)     } override func handleNewFlow(_ flow: NEFilterFlow) -> NEFilterNewFlowVerdict {       return .allow();  } As we are not doing any processing in handleNewFlow() function and just returning allow verdict. But this is also resulting in same behaviour and not able to handle when some process is doing lot of network operations. Please let us know if we are missing something here.
14
0
1.4k
Oct ’20
Content Filter Network Extension not intercepting localhost (127.0.0.1) connections
Hi, I am not able to see the localhost(127.0.0.1) connection request capture by the content filter network extension but all other connection is being intercepted by the NE. Is there any specific way to add in filter setting even after using following filter setting. override func startFilter(completionHandler: @escaping (Error?) -> Void) {     let filterRules = ["0.0.0.0", "::"].map { address -> NEFilterRule in       let bothNetworkRule = NENetworkRule(remoteNetwork: nil,                          remotePrefix: 0,                          localNetwork: nil,                          localPrefix: 0,                          protocol: .any,                          direction: .any )       return NEFilterRule(networkRule: bothNetworkRule, action: .filterData)     }     let filterSettings = NEFilterSettings(rules: filterRules, defaultAction: .allow)     apply(filterSettings) { error in        if let applyError = error {         os_log("Failed to apply filter settings: %@", applyError.localizedDescription)        }        completionHandler(error)     }
3
0
996
Dec ’20