A network interface is the hardware or software point at which a computing device connects to a network, mediating the transmission and reception of data frames. In hardware it is realised as a network interface controller bearing a unique MAC address; in software it appears as a named, addressable endpoint that the operating system binds to a protocol stack. The interface bridges the physical and data-link layers to the network layer, allowing higher-level protocols to send and receive packets without managing the underlying medium.
Overview
- In hardware the interface is a network interface controller, with a burned-in MAC address identifying it on a local segment.
- The operating system exposes each interface as a named, configurable object that protocols bind to.
- The interface abstracts the transmission medium, so higher layers send packets without knowing whether the link is Ethernet, wireless or virtual.
- Virtual interfaces extend the concept to containers, virtual machines and overlay networks.
Key aspects
- Addressing: a hardware MAC address at the link layer and one or more IP addresses at the network layer.
- Driver mediation: the operating system driver translates between the controller and the protocol stack.
- Layering: the interface sits across physical, data-link and network layers, presenting a uniform send/receive abstraction.
- Configuration: speed, duplex, MTU and addressing parameters govern its behaviour.
Applications
- Connecting servers, workstations and embedded devices to wired and wireless networks.
- Virtual networking for containers and virtual machines via software interfaces.
- High-throughput data-centre links and network function virtualisation.
- Multi-homing and link aggregation for redundancy and bandwidth.