When I run adb shell
, ifconfig
on my android device, I get a list of network interfaces. While this answer covers most of the interface names, I am left wondering what rmnet_ipa0
might stand for.
lo usually stands for the loopback interface (localhost)
wlan usually stands for a wireless networking interface
rmnet interfaces are usually associated with cellular connections and usb tethering
sit interfaces are associated with tunneling IPv6 over IPv4
p2p interfaces are usually associated with peer-to-peer connections (perhaps your Android device's WiFi Direct support?)
dummy interfaces provide special aliases for the loopback interface
I believe that usb-thethering would usually be something like rmnet_usb0
, and my phone's mobile data connection would probably be rmnet_data0
, so what is that rmnet_ipa0?
.
The whole output of ifconfig
is
rmnet_ipa0 Link encap:UNSPEC
UP RUNNING MTU:2000 Metric:1
RX packets:88626 errors:0 dropped:0 overruns:0 frame:0
TX packets:64896 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:89068838 TX bytes:9380664
wlan0 Link encap:UNSPEC
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:1756445 errors:0 dropped:53160 overruns:0 frame:0
TX packets:650187 errors:0 dropped:186 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:985553036 TX bytes:283899452
dummy0 Link encap:UNSPEC
inet6 addr: fe80::b86e:42ff:fea4:48/64 Scope: Link
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 TX bytes:210
rmnet_data0 Link encap:UNSPEC
inet addr:10.149.211.81 Mask:255.255.255.252
inet6 addr: fe80::6bca:2283:2c80:a22f/64 Scope: Link
UP RUNNING MTU:1500 Metric:1
RX packets:88626 errors:0 dropped:0 overruns:0 frame:0
TX packets:64896 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:88005326 TX bytes:9380664
lo Link encap:UNSPEC
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope: Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2694 errors:0 dropped:0 overruns:0 frame:0
TX packets:2694 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:166553 TX bytes:166553
It is still showing up as UP RUNNING
when the phone is in Airplane Mode.
A network interface unit (NIU) (sometimes called a network interface device) is a device that serves as a common interface for various other devices within a local area network (LAN), or as an interface to allow networked computers to connect to an outside network.
RmNet is a proprietary USB virtual Ethernet framework developed by Qualcomm for its mobile phone platforms. RmNet provides for improved throughput via the Thin Layer Protocol (TLP) and allows for Quality of Service flow control, which is necessary for a quality end-user experience in today's mobile network.
Use this: String interfaceName = SystemInfo. getInstance(). getProperty("wifi. interface");
↳ java.net.NetworkInterface. This class represents a Network Interface made up of a name, and a list of IP addresses assigned to this interface. It is used to identify the local interface on which a multicast group is joined. Interfaces are normally known by names such as "le0".
rmnet_data0 is created for USB tethering and for cellular connection. Note that the IPA is an" IP Acceleration" feature from Qualcomm. SO when rmnet_ipa0 exists, it mean you are using a phone with Qualcomm's SoC, and this interface is created for IPA feature. This interface just like another tunnel for cellular data, but without bothering SoC, which reduces the effort of Soc.
rmnet_ipa0 will be there even when your phone is in airplane mode (because setting airplane mode just disconnect modem in the phone from the base-station, but the interface between modem and PC is still exist).
To expand on previous answer... SoC stands for "System on Chip". More than just your device's CPU, it is your device. Save the peripherals (CMOS/camera sensor, display, speakers, mic, etc.), the SoC is literally the entire system on a board (usually not on a single silicon chip, although the CPU and GPU are often), it contains the GPU, CPU, IPC (image processor), WIFI modem, Cellular modem(s), CMOS, data processor for camera, and more, depending on device, like specialized VR processing units, GPU independent varying precision arithmetic units, AI acceleration units, etc.). Think of the SoC as an all in one motherboard on a PC- CPU, GPU, most peripheral (akin to PCI(e) cards) devices are pre-integrated into the chip in order to reduce size, improve electrical efficiency and ease mass production flow.
As for IPA, an IP accelerator would be a physical interface (a special processing unit) on the SoC, so it would not put less strain on the SoC per sé, but rather use a dedicated chip on the system board to handle IP traffic. So the load would not need be burdened by the CPU. This is similar to "hardware offload" on desktop/laptop modems (WiFi, ethernet, etc.) cards. Except in the latter case, the specialized processor for handling then would be a part of the modem card, not on the system.
Note that a net effect would be the SoC doing less work, as the IPA is more efficient at IP packet processing than the CPU unit, since it is specialized for the task.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With