JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT INITIAL IP PBX TRUNK SIZING Engineering the user base of an IP PBX, PBX or key system to a number of telephone network lines or VoIP capacity should involve some form of predictive modeling. Using a fixed extension to incoming line ratio, such as 4:1, may be a tried-and-true place to start, but competitive pressures coupled with a new generation of Internetsavvy entrepreneurs means that many sales professionals will only get one chance to size it right and capture the business. For an IP PBX, the complexity of predicting the human behavior is compounded by the technological variables involved in describing the operation of a VoIP telephony system. When sizing a new installation, much of the voice traffic information required for proper capacity calculations may not be available. Estimating busy hour call attempts (BHCA) and other such key parameters should be undertaken with care and caution, especially when dealing with small-medium businesses (SMBs) with user populations of five to 50 extensions. If we break down the design/sizing process, we propose three distinct steps: • Develop a rudimentary call model based upon the total number of telephony users and their calling patterns. The output of this model will be quantified voice traffic expressed as a high/low traffic range representing different business models. • Using the estimated voice traffic range, calculate the PBX's required incoming trunks (equivalent line appearances). • Translate the required trunks into corresponding VoIP network capacity in terms of the codec and voice sample size selected. The best way to illustrate this is through an example. A detailed discussion of the concepts and methods follows the example. SAMPLE CUSTOMER PROPOSAL A cable operator is bidding on the communication upgrade of an established florist employing 10 people, and which is currently serviced by four dedicated telephone lines: one direct line for the office manager, three lines shared among the remaining staff, and a point of sale terminal. These lines operate as a hunt group off the main directory number. Upon meeting with the customer, the sales engineer captures the following user telephony profile (see Figure 1): 1 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT FIGURE 1: Customer proposal, initial conditions • One office manager: high telephone use • Four customer-serving staff (counter); low telephone use • Three noncustomer-serving staff accepting and filling telephone orders (coordination of deliveries): high telephone use • Two drivers; extremely low telephone use at the business site, but high cellular use • Existing cable modem-based data service, with business grade 1 Mbps bidirectional service. Data traffic includes access to email, point of sale terminal, hosting external Web site, B2B traffic (suppliers), and Web surfing. From this data, the sales engineer must now attempt to size the IP PBX system for the bid and confirm that the existing 1 Mbps bidirectional cable modem service is adequate. Call model and traffic calculations: • High-use user traffic = 4 * 0.15 = 0.6 Erlang • Low-use user traffic = 4 * 0.10 = 0.4 Erlang Total traffic = 1.0 Erlang Required incoming telephony lines for 1.0 Erlang: • One call blocked in every 100 - grade of service (GOS) (0.01) = 5 • 10 calls blocked in every 100 - GOS (0.1) = 3 Recommendation: Start with computing the network capacity for three and four trunks (incoming lines) since some incoming call blockage may be acceptable to the customer. 2 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT To find the required network VoIP capacity, select a codec (G.729) and sampling rate (20 ms), and then compute or look up the required capacity as shown in Table 1. TABLE 1: Line rates Recommendation: • Provided that the network's end-to-end latency characteristics are acceptable, G.729 with 20 ms @ 163.2 kbps would provides a good balance between audio quality and network efficiency. • It is up to the sales engineer, given his understanding of this customer's calling traffic patterns, to propose a three- or fourtrunk system. A competitive approach may be to propose a three-trunk system at G.729 @ 20 msec sampling and a network capacity of 122.4 kbps, upgrading to four trunks if the customer encounters higher than existing call blockage or customer complaints. • The direct line to the manager is replaced with a direct inward dial (DID) number that is intercepted at the IP PBX and routed directly to the manager's telephone. • The final proposal would look like that shown in Figure 2. 3 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT FIGURE 2: Customer proposal, final design Conclusions: predictive • The existing 1 Mbps bidirectional data service is adequate to carry the existing data and the new VoIP traffic. • Additional attention may be required to the cable modem at the premises to ensure that the VoIP packets and their QoS markings are provided the correct service levels. In 1909, while employed by the Copenhagen Telephone Co., A.K. Erlang published his first work on the "Theory and Probabilities of Telephone Conversations." His legacy is a body of works that provide both a proof and working models to engineer telephony networks based upon Poisson's law of random distribution. His mathematical insights linked the quantity of network resources (trunks) to the demand (user traffic) by the number of call failures stemming from lack of resources (grade of service, or GoS). TELEPHONY TRAFFIC BASICS The best way to engineer a PBX is to record the voice traffic levels over multiple days and to design a system accordingly. But when actual data is not available, estimating is the only option, and to do so is akin to predicting how often and for how long the subscribers use their telephones. The type of business and the total number of possible telephone connections were identified as predictors of telephony traffic nearly 100 years ago during the development of statistical models. Today, different traffic models and their derivatives are the standard used to engineer the number of public switched telephone network (PSTN) trunks that are required to support a given number of PBX extensions. The models have multiple variants specifically designed to emulate different call treatment behaviors as seen in the 4 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT current feature-rich environment of PBX. The Erlang B and Extended Erlang B models are used for noncall center PBX modeling - that is, for installations where call blockage rates are very low and call overflow is to an automated facility such as voicemail. Conversely, the Erlang C model was developed to describe systems where calls are directed or queued for treatment by attendants or call center agents. In fact, the model and its associated tables are used to engineer such parameters as the number of call agents and the behaviors of autoattendants. Typical SMB deployments of the five to 50 user ranges are at the periphery of the descriptive capabilities of statistical models. It is recommended that sales engineers utilize a bracketing technique coupled with their judgment when designing systems. Intuitively, given the same number of extensions, an auto-parts distributor will probably receive more calls per hour than a gas station and should have more incoming trunks from the PSTN. Thus, developing a high-low range of options will provide for a better overall design. As stated earlier, triedand-true methods, such as a fixed 1:4 ratio of incoming lines to extensions, are perhaps a good starting point, but having greater design options can only increase the overall value to the end customer. in these small user base installations in a way that reflects the business model and generates the high-low traffic options. In the absence of actual traffic data for an installation, a good place to start is with the end users and their telephone use patterns. Busy hour The most precise way of determining the number of network trunks needed to support a specific group of users is to observe their calling patterns over a period of time to determine when they are at their busiest. The voice traffic during this busy hour, in combination with the acceptable percentage of call failures (blocking), is the point for which the system is engineered. The problem faced by my colleague, and cable operators in general, is that for new installations and customers there is little or no busy hour data available. Thus, an approximation must be developed that provides enough realism that a system can be sized for bidding and initial installation. The specific challenge lies in finding a simple way to characterize the traffic flows Two key pieces of information are needed to use an Erlang table: the maximum traffic load generated by the PBX and the acceptable quantity of failed calls (GoS). A way of estimating the former is to build a call model that describes the behavior of the PBX users at busy hour. For example, if we average out the calling rates of all of the users of a PBX and inject best field practices to create a sample busiest hour, we can propose the traffic rates shown in Table 2. TABLE 2: Sample user traffic (This information is provided as non-definitive values, which should be used with caution; users are encouraged to follow best practices 5 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT and to refine their traffic estimation methods within the context of their market forces and customers' values.) The intent of Table 2 is to develop an easily customizable call model that provides a high/low traffic range needed to guide the final system design. The values contained are for demonstrative purposes and should not be mistaken for actual field data. With use, this model can be refined to reflect specific user behaviors and market trends and will ultimately provide sales engineers with design options. If we look at an example, a non-call center PBX with 15 users and an acceptable It should be noted that in this example, the fixed 1:4 ratio would have prescribed four trunks (10% blocking), which may have been acceptable for the customer. However, with the range of options presented by this bracketing technique, the sales engineer can better tailor the design to the individual customer's business model. Traffic and capacity The great innovation of our time, the Internet, has begun to revolutionize the total connection experience, and the underlying technologies of Ethernet and IP are making a fundamental change to the way communications are transported and processed. VoIP brings with it the promise of economic benefits as users converge their blockage of rate of between 1 and 10 calls in very 100 would give: GoS: 0.01 (1% blocking) Table: Erlang B (noncall center) Busy hour high = 15 * 0.15 E = 2.25 Erlang Busy hour low = 15 * 0.1 E = 1.5 Erlang Required trunks high = 7 Required trunks low = 5 GoS: 0.1 (10% blocking) Table: Erlang B (noncall center) Busy hour high = 15 * 0.15 E = 2.25 Erlang Busy hour low = 15 * 0.1 E = 1.5 Erlang Required trunks high = 5 Required trunks low = 4 traffic onto one infrastructure. For the purposes of engineering an IP PBX's network connection needs, both the Ethernet-based VoIP packet and the digitized voice sample need to be quantified. Starting from the basics, the VoIP IP packet is a multi-protocol sandwich in which the voice payload is encapsulated in layers of real-time transport protocol (RTP), user datagram protocol (UDP), IP and QoSenabled Ethernet (802.1q). Each protocol is defined with fixed and variable length components, which in combination with the voice payload become a packet stream that we will refer to as the line rate. (See Figure 3.) 6 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT FIGURE 3: 802.1q VoIP Packet Structure If we complete the math on the VoIP packet stream, by adding up all of the protocol and framing related bytes, we see that each voice sample will have minimum of 82 bytes of packet overhead for this protocol combination. (See Table 3.) 7 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT TABLE 3: Packet overhead The next step involves calculating the exact size of the voice payload for the specific combination of codec and sampling rate utilized. Once calculated, the encapsulating packet overhead is added to produce the total packet size; from this the effective line rate is calculated. A summary of the most common codecs and sample sizes is provided in Table 4. 8 JFM-RTU COMMUNICATIONS SYSTEM DESIGN/VoIP SUPPLEMENT TABLE 4: Line rates (Calculated line rates are a product of the assumptions used in the calculation of the packet overhead. By including or omitting optional parameters and physical attributes such as inter-frame gaps, your line rate calculations may vary from these.) The line rates from Table 4 provide an equivalent bit stream for each half of the voice conversation. Thus, if your customer is transporting G.711 @ 30 mSec sampling VoIP calls over an 802.1q bidirectional Ethernet facility, each session will be transmitting a packet stream of 98.9 kbps. If this is done over a 2 Mbps facility reserved for VoIP traffic, then a maximum of 20 simultaneous calls can be supported. Note: This discussion pertains to the capacity from the cable modem to the IP PBX. When the term "2 Meg pipe" is used, it refers to what is available to the end user. Additional DOCSIS overhead would apply if we were discussing the capacity needed within the cable plant. CONCLUSION The question can only be answered if we understand the IP PBX's voice traffic use patterns and the choice of codec and sampling rates. The simplified method presented in this article can help newcomers to commercial services develop their own practices for initial IP PBX trunk sizing. This is a lucrative market where cable operators can effectively leverage their QoSenabled DOCSIS infrastructure, provided they master the concepts of enterprise voice engineering. 9