Experimenting with New Methods in Voice over IP
Being able to integrate voice and data is a strong desire of business as well as of residential users. This type of integration is inefficient, however, on the telephone legacy of channelled voice slots having time division multiplexing (TDM) with expensive associated equipment. A data network like the Internet, with its statistical TDM, uses precious bandwidth much more efficiently. Moreover, the universal presence of IP both in wide area and local area networks makes it a convenient platform to launch VoIP traffic. In this article we share our experience of testing VoIP in our Linux lab. We discuss the entire VoIP environment, including the soft switch and the telephony hardware needed to improve voice quality.
There is much more to IP telephony than simply being able to talk over Internet. To be successful, an IP telephony system must provide all the facilities that are provided by modern public switched telephone networks (PSTN). The quality of service (QoS) for an IP telephony system also should be comparable to that of PSTN. For the deployment of IP telephony, the infrastructure--that is, an IP network--is already available in many cases. It is required to implement protocols necessary for signaling, media transfer, QoS, as well as various features, such as voice mail, billing and son. Unlike PSTN, IP telephony has computers at their endpoints, which are extremely powerful. This allows much of the power and intelligence of the system to be concentrated at endpoints.
We have performed some fundamental experiments on VoIP in the Computer Communications Lab at the University of Engineering & Technology (UET) in Lahore, Pakistan. Our emphasis is on the applications and performance considerations for IP telephony. We are using Quicknet's voice telephony cards for our telephony clients. We have based our VoIP network on VOCAL, which is a soft switch from Vovida Networks. VOCAL enables advanced telephony features, applications and services to be effectively deployed on converged datacom-telecom networks. In addition, we are using ohphone, which is an H.323 client, and a PSTN gateway, both of which are from the OpenH323 project. All these applications run on Linux. Below we discuss the benefits that Linux provides when is used as a VoIP platform.
VoIP protocols are mainly divided into signaling and media protocols. Signaling means call setup, teardown and control. As the number of features and services grow, signaling becomes equally challenging. Unfortunately, a single signaling technology has not yet been defined. But Session Initiation Protocol (SIP), H.323 and Media Gateway Control Protocol (MGCP) are the front-runners. All these protocols are undergoing rapid developments in their capabilities and features. Currently, users of different signaling techniques cannot generally make calls to each other. However, a protocol translation between different signaling protocols can be used in this situation. We discuss a SIP-H323 translator below.
Regardless of the signaling protocol used to setup calls, there appears to be no controversy over the use of the Real Time Protocol (RTP) for media transport. The Real Time Control Protocol (RTCP) is an associated protocol, which provides end-to-end monitoring of data delivery and quality of service. They are independent of underlying transport and network layers. Most commonly RTP and RTCP are used on top of UDP.
SIP is an IETF standard and is described in RFC-2543. Although H.323 is in widespread use in the VoIP market, it is not necessarily the best available protocol. Its competitor, SIP, has a number of advantages that makes it a superior choice for VoIP applications. The first is advantage is SIP focuses exclusively on telephony issues, originally designed to deal with telephony as opposed to other protocols. H.323 and MGCP both support telephony functions in a manner similar to that of phone companies on their circuit switched networks, which is not the most efficient method on a packet-switched network. SIP's distributed architecture handles load surges and service interruptions efficiently in the distributed model of IP communications.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Designing Electronics with Linux | May 22, 2013 |
| Dynamic DNS—an Object Lesson in Problem Solving | May 21, 2013 |
| Using Salt Stack and Vagrant for Drupal Development | May 20, 2013 |
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
- New Products
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Web & UI Developer (JavaScript & j Query)
- Designing Electronics with Linux
- Dynamic DNS—an Object Lesson in Problem Solving
- Using Salt Stack and Vagrant for Drupal Development
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?




54 min 2 sec ago
7 hours 48 min ago
8 hours 4 min ago
9 hours 55 min ago
15 hours 47 min ago
20 hours 18 min ago
20 hours 19 min ago
22 hours 19 min ago
1 day 7 hours ago
1 day 7 hours ago