phones can be simple software-based softphones or purpose-built hardware devices that appear much like an ordinary telephone or a cordless phone. Traditional PSTN phones are used as VoIP phones with analog telephone adapters. A VoIP phone or application may have many features an analog phone doesn't support, such as e-mail-like IDs for contacts that may be easier to remember than names or phone numbers, or easy sharing of contact lists among multiple accounts. Generally the features of VoIP phones follow those of Skype and other PC-based phone services, which have richer feature sets but latency-related audio problems. As mainstream operating systems became better at voice applications with appropriate Quality of Service guarantees and 5G handoff becomes available from wireless carriers, tablets and smartphones became the dominant interfaces. iPhone, Android and the QNX OS used in 2012-and-later BlackBerry phones are widely capable of VoIP performance. They also typically support the USB but not Ethernet or Power over Ethernet interfaces. The smartphone became the dominant VoIP phone because it works both indoors and outdoors and shifts base stations/protocols easily to trade off access costs and call clarity and other factors personal to the user, and the PoE/USB VoIP phone was thus the transitional device.
Components and software
A VoIP telephone consist of the hardware and software components. The software requires standard networking components such as a TCP/IP network stack, client implementation for DHCP, and the Domain Name System. In addition, a VoIP signalling protocol stack, such as for the Session Initiation Protocol, H.323, Skinny Client Control Protocol, and Skype, is needed. For media streams, the Real-time Transport Protocol is used in most VoIP systems. For voice and media encoding, a variety of coders are available, such as for audio: G.711, GSM, iLBC, Speex, G.729, G.722, G.722.2, other audio codecs, and for video H.263, H.263+, H.264. User interface software controls the operation of the hardware components, and may respond to user actions with messages to a display screen.
STUN client
To enable the VoIP communications, the SIP/RTP packets should be utilised and STUN client would be the key component for VoIP communications with management of the SIP/RTP packets. A Session Traversal Utilities for NAT client is used on some SIP-based VoIP phones as firewalls on network interface sometimes block SIP/RTP packets. Some special mechanism is required in this case to enable routing of SIP packets from one network to other. STUN is used in some of the sip phones to enable the SIP/RTP packets to cross boundaries of two different IP networks. A packet becomes unroutable between two sip elements if one of the networks uses private IP address range and other is in public IP address range. Stun is a mechanism to enable this border traversal. There are alternate mechanisms for traversal of NAT, STUN is just one of them. STUN or any other NAT traversal mechanism is not required when the two SIP phones connecting are routable from each other and no firewall exists in between.
DHCP client
DHCP client software simplifies connection of a device to an IP network. The software automatically configures the network and VoIP service parameters.
Hardware
The overall hardware may look like a telephone or mobile phone. A VoIP phone has the following hardware components
Power source - a battery or DC/AC source; some VoIP phones receive electricity from Power over Ethernet
Some VoIP phones include an RJ-11 port to connect the phone to the PSTN
Other devices
There are several Wi-Fi enabled mobile phones and PDAs that have pre-installed SIP client software, or are capable of running IP telephony clients, including most smartphones. Analog telephone adapters provide an interface for traditional analog telephones to a voice-over-IP network. They connect to the Internet or local area network using an Ethernet port and have jacks that provide a standard RJ11interface for an analog local loop. Another type of gateway device acts as a simple GSM base station and regular mobile phones can connect to this and make VoIP calls. While a license is required to run one of these in most countries these can be useful on ships or remote areas where a low-powered gateway transmitting on unused frequencies is likely to go unnoticed. Some VoIP phones also support PSTN phone lines directly.
Support for multiple VoIP accounts – the phone may register with more than one VoIP server/provider.
* Accounts are usually set and memorized on the phone itself. A more sophisticated feature is dynamic download of account settings, also known as "extension mobility". This feature allows settings stored on a server to be downloaded to the phone, based on user login. The user logs into the phone and that phone becomes the user's extension. This feature requires both a client and a server, usually in the context of unified communications systems.