In this tip we discuss the key issues of developing VoIP products.Voice quality
The voice quality should be comparable to what is available using the PSTN, even over networks of varying levels of QoS. If a company thinks that reducing the bills is the criteria and adopts a poor quality VOIP service, then the only people using that service would be the Managing Director and the Accounting Officer. The employees will not compromise quality to reduce the company's bills.
The following factors decide the VOIP quality:Use of an a quality CODEC
Codec stands for coder decoder. It should give good voice quality and low delay. The International Telecommunication Union's (ITU's) officially recommended CODEC for all wide area networking applications is G.729. Echo cancellation
When a two-wire telephone cable connects to a four-wire PBX interface or a telco central office interface, a special electric circuit called a hybrid is used to do the conversion. But in them a small percentage of telephone energy is not converted, but instead reflected back to the caller creating an echo. If the delay is more than 10MS the caller hears the echo and this has to be avoided. Delay
- Total Transmission Delay
Total transmission delay is the sum of the compression, decompression delays, processing delay, the buffering/queueing delay, the transmission delay and the network delay. The network delay is
- variable while the others can be fixed pre-hand to less than 130MS. When this total delay exceeds 200MS, the two speakers have to make sure that when one speaks the other listens and pauses to make sure that the speaker is done. Bad timing may result in stepping on the other's message.
- Delay jitter
Delay jitter is the variability in arrival time of a packet. When a packet does not arrive in time to fit into the voice stream going out of the far end gateway, it has to be discarded. It cannot be re-transmitted, as it would delay proceedings too much. If this happens too often, then the listener will perceive reduced voice quality.
- VOIP packet prioritization
The reason VOIP works well over a corporate IP network is due more to the corporate network's low jitter than low delay. Corporate routers usually prioritize voice/fax packets either by explicit programming of the router or by using a prioritization protocol like Resource ReserVation Protocol(RSVP).
- IP packet segmentation
This is an important step required to ensure that a very long data packet does not delay the voice packet from exiting the router in a timely manner. This is achieved by programming the router to segment all outbound data packets according to the WAN access link.
- Packet replay technique
To allow for variable packet arrival time and still produce a steady outgoing stream of speech, at the far end the speech is not played as soon as the first packet arrives. Instead it is held in the jitter buffer for some time and then played. This adds to the overall delay. The lesser the jitter, smaller the jitter buffer time and lower the delay.
The combination of the above three techniques produces a VOIP friendly IP network. Such IP networks are called managed IP networks.
- VOIP Forward Error Correction (FEC)
The public Internet has substantial packet corruption and loss. Packet replay may not suffice. For this FEC can compensate for the corrupted or missing packet.
- Intra packet FEC
Here extra bits are added, thus allowing the receiving end to determine which of the bits were corrupted, yielding a packet ready for play out.
- Extra packet FEC
Here extra information is added to each packet that allows the receiving gateway to extrapolate from the previously received good packet and reconstruct the missing or severely corrupted packet
A telephone quality call or a toll quality call requires atleast 64 KBPS/call. This bandwidth is impossible to dedicate on a data network for voice.
Speech compression techniques as the G.729 reduce this to around 8KBPS. The IP router overhead is around 7 KBPS. Thus it is 15 KBPS. But modern compressors make use of an important technique called assilence suppression. In a typical full duplex phone conversation, only 35-40% is active. There are significant pauses between words and phrases. The bandwidth consumption is thus reduced by silence suppression. Ultimately voice requires only 5-6 KBPS.
Silence suppression renders the line absolutely silent to the listener so much so that it sounds absolutely dead. But by inserting comfort noiseor, even better, by periodically sampling the background noise and regenerating it for the listener, the line sounds active.Transparency to the user
The user need not know what technology is being used for the call. He should be able to use the telephone as he does right now.
- Ease of configuration
An easy to use management interface is needed to configure the equipment. A variety of parameters and options such as telephony protocols, compressing algorithm selections, dialing plans, access controls, PSTN fall back features and port arrangement are to be taken care of.
Telephone numbers and IP addresses need to be managed in a way that it is transparent to the user. PCs that are used for voice calls may need telephone numbers. IP enabled telephones IP addresses or an access to one via DHCP protocols and Internet directory services will need to be extended to include mappings between the two types of addresses.
- The TCP/UDP issue
The voice packet is constructed as a UDP/IP packet, to avoid TCP/IP's attempt to retransmit the corrupted packet. However TCP could be a better alternative for fax transmission simply because if lost packets occur during the negotiation of a page, the fax could be terminated. When TCP/IP is used and the host software hides the retransmission from the fax machine, there will be no impact.
At a remote site there are normally two to four VOIP connections (or trunks) from the VOIP gateway to the PBX allowing two to four simultaneous phone/fax connections between the remote site and other corporate locations. The actual number of trunks, depend upon the number of calls made per day and the total amount they consume. The number of the headquarters trunks is decided by the total number of phone calls between headquarters and the remote sites and the total number of simultaneously active calls. Usually, headquarters have a fraction of the total trunk count. The trunk contention ratio is the ratio of total remote site trunks to headquarter trunks. Security
VOIP offers the potential for secure telephony by making use of the services available in TCP/IP environments. Access controls can be implemented using authentication and calls can be made private using encryption of the links.
- Security implementation
Security features are usually implemented using four primary components: packet filtering router, connection gateway, address translating firewall and application proxy. (Mercer '99)
- Achieving security is a complex issue. An H.323 call is made up of many different connections. In addition addresses and port numbers are exchanged within the data stream of the next higher connection. This makes it particularly difficult for address translating firewalls which must modify the addresses inside those data streams.
The firewall must be able to stand under a large number of simultaneous connections also. Detection of intruders should be possible on the inside and the outside of the firewall.
VOIP gateways must keep track of successful and unsuccessful calls. Call detail records should be produced. But the major issue is the suitable billing model selection. A number of billing models have been suggested:
Metered by flow duration, time-of-day, time-of week destination, distance, carrier-based IP are rated by called and calling station IDs associated with the sequence of stages used to support the call QoS-based Voice over IP, reflecting established service parameters such as priority, selected QoS and latency.
Directory-based billing applications will streamline the process of customer registration, authorization and service provisioning without human intervention. Directory-based billing applications store user profiles, service profiles and service policy information in the directory instead of a private datastore. That way, the directory service can maintain the security and integrity of the data in a physically distributed environment.
Other billing models currently being developed include:
- Secure Active Directory services for storage and replication of static and dynamic data
- Integrated Domain Name System (DNS) and Dynamic Host Configuration Protocol (DHCP) services for associating IP address pools with user and application profiles
- Directory-based event services for propagation of application and network events
- Cross-platform application programming interfaces for enabling disparate billing, provisioning, and management applications to securely produce and consume directory-based data.
In addition to all the above points, in a public networking environment different products will need to interwork if any to any communications is to be possible. The gateway between the telephone and the VOIP needs to be highly reliable and fault tolerant. Sufficient capacity must be available in the VOIP systems to minimize the likelihood of a call blocking and mid-call disconnects. The gateways must allow every device to be accessible, especially when there is mapping across different protocols and signaling systems. VOIP is likely to get very popular. In that case, the components should be flexible enough to grow to very large user populations, to allow a mix of public and private services and to adapt to legal regulations.
View tip #1 in this series -- Introduction to Internet Telephony here.
View tip #2 in this series -- Identification of major system components here.
This tip is reprinted with permission from the report 'Voice over IP: Products, Services and Issues' by Vinodkrishnan Kulathumani at Ohio State University.
This was first published in March 2005