16 Replies
      Latest reply on May 3, 2020 6:22 PM by Sam Chiwai
      Cougnes Level 1 Level 1 (10 points)

        I've been wondering what is the memory limit for network extensions. Specifically, I'm using the NEPacketTunnelProvider extension point.


        The various posts on this forum mention 5 MB and 6 MB for 32-bit and 64-bit respectively. However I find that (at least on iOS 10) the upper limit seems to be 15 MB. Is this the new memory limit for extensions?

        • Re: What is the memory limit for a network extension?
          eskimo Apple Staff Apple Staff (13,905 points)

          You’re right that the limit for packet tunnel providers has been raised.  However, other providers still have really low limits.  Here’s what I’m seeing currently.


          Provider32-bit64-bit
          packet tunnel14 MiB15 MiB
          app proxy14 MiB15 MiB
          filter control5 MiB6 MiB
          filter data5 MiB6 MiB

          IMPORTANT These limits have changed in the past and may well change in the future.  I’m posting them to assist in your debugging.  You should not hard code knowledge about these limits into your code.  The only way to ensure that your provider can run within the system’s memory limits is to thoroughly test it on a wide range of device / OS combinations.

          Share and Enjoy

          Quinn “The Eskimo!”
          Apple Developer Relations, Developer Technical Support, Core OS/Hardware
          let myEmail = "eskimo" + "1" + "@apple.com"