En VoIP-telefon består av hård- och mjukvarukomponenter. Programvaran kräver standardnätverkskomponenter såsom en TCP/IP-nätverksstack, klientimplementering för DHCP och DNS (Domain Name System).Dessutom behövs en protokollstack för VoIP-signalering, t.ex. för SIP (Session Initiation Protocol), H.323, Cisco (Skinny Client Control Protocol) och Skype.För medieströmmar används RTP (Real-time Transport Protocol) i de flesta VoIP-system. För röst- och mediekodning finns en mängd olika kodare tillgängliga, t.ex. för ljud: G.711, GSM, iLBC, Speex, G.729, G.722, G.722.2 (AMR-WB), andra ljudkodare och för video H.263, H.263+, H.264. Programvaran för användargränssnittet styr hårdvarukomponenternas funktion och kan reagera på användarens åtgärder med meddelanden till en bildskärm.
STUN clientEdit
För att möjliggöra VoIP-kommunikation bör SIP/RTP-paketen användas och STUN-klienten skulle vara den viktigaste komponenten för VoIP-kommunikation med hantering av SIP/RTP-paketen. En STUN-klient (Session Traversal Utilities for NAT) används på vissa SIP-baserade VoIP-telefoner eftersom brandväggar på nätverksgränssnittet ibland blockerar SIP/RTP-paket. I detta fall krävs en särskild mekanism för att möjliggöra dirigering av SIP-paket från ett nätverk till ett annat. STUN används i vissa sip-telefoner för att göra det möjligt för SIP/RTP-paket att korsa gränserna mellan två olika IP-nätverk. Ett paket kan inte dirigeras mellan två sip-element om ett av nätverken använder ett privat IP-adressområde och det andra är ett offentligt IP-adressområde. Stun är en mekanism för att möjliggöra denna gränsöverskridning. Det finns andra mekanismer för att överskrida NAT, STUN är bara en av dem. STUN eller någon annan mekanism för NAT-överskridande behövs inte när de två SIP-telefoner som ansluts kan dirigeras från varandra och det inte finns någon brandvägg mellan dem.
DHCP-klientRedigera
DHCP-klientprogramvara förenklar anslutningen av en enhet till ett IP-nätverk. Programvaran konfigurerar automatiskt nätverks- och VoIP-tjänstens parametrar.