Bryan Cua. May 3, Instructor Lakshman One School of Engineering Science Simon Fraser University Burnaby, BC V5A 1S6

Similar documents
Re: ENSC 440 Project Proposal Voice Recognition System in an MP3 Player

ENSC 340 Proposal: The idac (Digtal Audio Cassette)

Proposal for a Smart House with Power Line Communication Network

Re: ENSC 340 Functional Specification for an Automotive Diagnostic Tool

Synopsis of Basic VoIP Concepts

Seminar report IP Telephony

Media-Ready Network Transcript

Investigation of Algorithms for VoIP Signaling

Re: ENSC 440 Post-Mortem Report: Advanced Shopping Cart by SmartBuy Ltd.

Serial Digital Audio Routing Switchers?

Re: ENSC 340 Project Proposal for MRx Home Theatre Interface

Speech-Coding Techniques. Chapter 3

ENSC 427 COMMUNICATION NETWORKS

COMP6471 WINTER User-Centered Design

FINAL REPORT 04/25/2015 FINAL REPORT SUNY CANTON MOBILE APPLICATION

STAUNING Credit Application Internet Sales Process with /Voic Templates to Non-Responsive Prospects 2018 Edition

Music on Hold with IP Connectivity

Re: ENSC 440 Project Proposal for Internet Media Streaming on TV

EnginuiTech Simon Fraser University Burnaby, BC V5A 1S9 February 14, 1999

ABSTRACT. that it avoids the tolls charged by ordinary telephone service

Interface The exit interface a packet will take when destined for a specific network.

1 GSW Bridging and Switching

Multimedia Decoder Using the Nios II Processor

Ch. 4 - WAN, Wide Area Networks

DATA SECURITY MANAGEMENT. Chris Hare INSIDE. What is a Network? Network Devices; Hubs; Repeaters; Bridges; Routers; Switches; Network

VoIP. ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts

Networking. Melissa Winstanley

ENSC 305W/440W Grading Rubric for Project Proposal

Main objectives or functions can be modelled like different blocks or components that can be observed in Figure 1. Figure 1: HOPE System Architecture

Functional Specifications for a Smart Baby Cradle Simon Fraser University School of Engineer 2016

Web Conferencing Service Reduces Company Travel Costs, Enhances Collaboration

ENSC 427: COMMUNICATION NETWORKS (Spring 2011) Final Report

Re: ENSC 440 Functional Specifications for a Posture Measurement and Data Logging System

Blackfin Online Learning & Development

Artisan Technology Group is your source for quality new and certified-used/pre-owned equipment

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.6, 1.1.7, and Network Math All None None 1.2.5, 1.2.6, and 1.2.

Evaluation of VoIP Speech Quality Using Neural Network

Final Project Report. Sharon O Boyle. George Mason University. ENGH 375, Section 001. May 12, 2014

Battle Command Radio Net User Guide Historical Software Corporation - Copyright 2011, HSC. All rights reserved.

Audio Conference Communication System (ACCS) Design Proposal. Team Members: Xianzhen Zhu (King) Saher Ahwal Wegene Tadele

Personal Health Assistant: Final Report Prepared by K. Morillo, J. Redway, and I. Smyrnow Version Date April 29, 2010 Personal Health Assistant

Chapter 4: Communication Technology. Solutions

WHITE PAPER: THE REALITY OF MEETING YOUR DATA VISUALIZATION DEMANDS! VISIT

Audio Streams Merging Over ALMI

OMEGA KEY. Presented by Breakthrough Innovations Group For ENSC 305W / 440W 21/04/2016

IMPLEMENTING CISCO VOICE COMMUNICATIONS AND QOS

Measuring Over-the-Top Video Quality

Lecture (04) Data link layer

10x Overview. Communication systems designed exclusively for small businesses

Bluetooth Access Control System for Home Appliances

How to Set up a Budget Advanced Excel Part B

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 20: Networks and Distributed Systems

Modern State Space Representation Using ADwin DAQ Systems

SIMON FRASER UNIVERSITY (SFU)

Digital Speech Coding

1 Introduction to Networking

Improving QoS of VoIP over Wireless Networks (IQ-VW)

Grab Your Hard Hat Ten Steps for Successful Web Site Construction

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 19: Networks and Distributed Systems

Location Based Advanced Phone Dialer. A mobile client solution to perform voice calls over internet protocol. Jorge Duda de Matos

Cindy Fan, Rick Huang, Maggie Liu, Ethan Zhang November 6, c: Usability Testing Check-In

CREATING A STYLE GUIDE FOR YOUR ORGANISATION

How Cloud PBX Can Benefit Your Business. Contents. Introduction... 4 What is Cloud PBX? How Does It Work?... 6 Is Cloud Technology Secure?...

On 26 Jul 2011, at 19:15, Rory McCune wrote:

Customer Guide to Passive VoIP Recording. March

New Signaling approach Improving the VoIP Quality of Service in Ad hoc Network

3Lesson 3: Web Project Management Fundamentals Objectives

Transporting audio-video. over the Internet

A Very Concise Introduction to Open Source Voice-over-IP. William Emmanuel S. YU Novare Technologies

VoIP Basics Guide A COMPREHENSIVE GUIDE FOR VOIP BEGINNERS. Call Us at

9/17/2018. Source: etiquette-important. Source:

VOIP Network Pre-Requisites

Lecture (04) Network Layer (Physical/Data link) 2

Name Jim Nolan Title Owner Company Name James Nolan Law Office. 65 Broadway, Suite 707, New York, NY 10006, (212)

Business Phone System Buyer s Guide

<< WILL FILL IN THESE SECTIONS THIS WEEK to provide sufficient background>>

Microsoft Office Communicator 2007 R2 Getting Started Guide. Published: December 2008

Service User Manual. a service of

What is Retirement Reality?

Transporting Voice by Using IP

ZyXEL V120 Support Notes. ZyXEL V120. (V120 IP Attendant 1 Runtime License) Support Notes

Title Core TIs Optional TIs Core Labs Optional Labs. 1.1 WANs All None None None. All None None None. All None 2.2.1, 2.2.4, 2.2.

Data Communication. Introduction of Communication. Data Communication. Elements of Data Communication (Communication Model)

Product Announcement. Aastra S850i Conference Phone

The Cisco Networking Academy at ECC Information Packet

Introduction. H.323 Basics CHAPTER

Electrical and Computer Engineering Technology

CASE STUDY IT. Albumprinter Adopting Redgate DLM

Adobe Connect User Guide

An Efficient VoIP System to Promote Voice Access Business

Comparison of QoS Performance Over WLAN, VoIP4 and VoIP6

Introduction to Quality of Service

Modems, DSL, and Multiplexing. CS158a Chris Pollett Feb 19, 2007.

Why You Should Consider a Hardware Based Protocol Analyzer?

Mobile MOUSe IMPLEMENTING VOIP ONLINE COURSE OUTLINE

Frequently Asked Questions about the NDIS

VoIP INTERNET-BASED PHONE SYSTEMS CHOCK FULL OF FEATURES

MULTIPLEXER / DEMULTIPLEXER IMPLEMENTATION USING A CCSDS FORMAT

Making Smart Group Video Collaboration Decisions

Project Gummi. 16-bit Microprocessor

Transcription:

May 3, 2007 Instructor Lakshman One School of Engineering Science Simon Fraser University Burnaby, BC V5A 1S6 Re: ENSC 440 Post Mortem for a Voice Bandwidth Saving System Dear Instructor One, Please find the attached post mortem for the Voice Bandwidth Saving System (VBSS), a communication system that reduces the bandwidth usage of VOIP applications. This document will outline the current state of the system, the deviation of the current system from the proposed design, and possible future plans for the system. As well, it will include project budget and time management for the project, and the interpersonal and technical experience Cheri Perception is composed of four SFU undergraduate engineering students with a range of technical skills and experience in software system development: Bryan Cua, Cathy Zhang, Tilson Chung, and Hubert Pan. If you have any questions or concerns regarding our proposal, please contact me by phone at 604.619.0841 or by email at ensc440-cheri@sfu.ca. Sincerely, Bryan Cua Bryan Cua CEO of Cheri Perception Enclosure: Post Mortem for a Voice over IP Bandwidth Saving System. Cheri Perception, SFU School of Engineering Science Burnaby BC, Canada V5A 1S6 ensc440-cheri@sfu.ca

VBSS Post Mortem May 3, 2007 VBSS Post Mortem

VoIP Bandwidth Saving System (VBSS) ii VoIP Bandwidth Saving System (VBSS) Post Mortem Project Team: Hubert Pan Tilson Chung Cathy Zhang Bryan Cua Contact Person: Bryan Cua bcua@sfu.ca Submitted to: Steve Whitmore ENSC305 Lakshman One ENSC440 Ash Parameswaran ENSC440 Issued date: May 4, 2007 Revision: 1.0 ii

Revision History iii Revision History Date Version Description 05/03/2007 0.1 Initial Draft 05/04/2007 1.0 Final Revision iii

List of Tables and Figures iv List of Tables and Figures Figure 1: Overall System Block Diagram... 1 Figure 2: VBSS Software Cycle... 2 Figure 3: Proposed Design Overview of Hardware and Software... 3 Figure 4: Current Design Overview of Hardware and Software... 4 Figure 5: Gantt Chart of Proposed and Actual Schedule... 6 iv

List of Tables and Figures v Table of Contents VoIP Bandwidth Saving System (VBSS)... ii Revision History... iii List of Tables and Figures... iv Glossary... 1 Introduction... 1 Current State of the System... 1 Deviation from the Proposed Design... 3 Assessment of Project Management... 5 Future Design Plans... 7 Interpersonal and Technical Experiences... 7 Conclusion... 9 Sources and References... 9 v

Glossary 1 Glossary Term Bandwidth Channel CODEC crtp G.711 G.7xx Header Information IP Layer 2 Layer 1 Peripheral Network Packet Definition A measure for communication capacity of a channel. Channel, here, primarily refers to the internet connection. A larger bandwidth means more information can be carried through that channel. Medium for transfer of information. We will mostly refer to the internet channel as the channel, for which we mean the lines or wires that carry information. Coder-Decoder A method of encoding and decoding information to save space while transferring. Analogous to using abbreviations. The writer will encode a word into an abbreviation while the reader decodes it to the full word. Compressed RTP Protocols use some bandwidth to store header information. crtp compresses the header information to save bandwidth. An audio CODEC standard used readily in VoIP phones. It utilizes PCM to compress information. A group of audio CODEC standards that are used in VoIP applications. Each CODEC uses a different way to compress information. Information added onto the data in a protocol, such as the RTP protocol, which directs the data to its destination. Internet Protocol A protocol for moving data from one location to another. There are two types of information header and data information. Data-Link Layer The second layer of networking is the data-link layer, which provides a means to transfer data between elements in a network. Physical Layer The first layer of networking is the physical layer, which only provides a means to transfer bits of data rather than packets The Ethernet Network that is connected to our VBSS System Pieces of information passing through the Ethernet Network are commonly known as packets 1

Glossary 2 Term Receiving System RTP Transmitting System VoIP VoIP Phones µ-law algorithm Definition System receiving information (data and header) Real Time Protocol A type of internet protocol that deals with data that cannot be delayed. System transmitting information (data and header) Voice over Internet Protocol The transfer of voice data over the internet is commonly referred to as VoIP Phones that send information through the internet A compression algorithm used by G.711. G.711 standard has two algorithms. One is µ-law, and the other is A-law. While µ-law is used in North America and Japan, A-law is used in Europe. -2-

Introduction 1 Introduction For the past months, the four talented engineers of the Cheri team Tilson Chung, Hubert Pan, Bryan Cua, and Cathy Zhang have developed VBSS through endlessly research and hard work. VBSS is designed to save the bandwidth usage of VoIP systems, and can be maintained by local staff. It is a transparent and readily installable utility. By utilizing physical differences between the voiced speeches of any two different people, VBSS is able to join these two distinguished voices together without spectrum spreading or time multiplexing. This document reexamines the overall developing of the VBSS such as the current system design, the deviation of the design, the project management, and the future expectation. In closing, all members of the Cheri team will present their experiences gained from participating in this venture. Current State of the System Figure 1: Overall System Block Diagram 1

2 The main functionality of our software system is to place control on the VBSS. The software algorithm is implemented in high level language and then is compiled to be run on top of the MicroBlaze processor. Figure 2: VBSS Software Cycle 1. Transmitter The transmitter is responsible for handling incoming phone packets and performing compression before forwarding them to the respective destination. The incoming voice packets are estimated to have regular 20ms intervals. Depending on number of incoming caller, transmitter will be creating several packet buffers that stores two previous packets from the same caller. The pair-wise synchronizer tries to synchronize pairs of caller by delaying one caller s packet for at most 10ms. Later, two independent voices, each with 60ms duration, will be passed into the Maximum Likelihood Pitch Detector (MLPD) to calculate the fundamental frequency. 2. Receiver The receiver encompasses the most complex part of the whole system; it splits merged voice signals into their respective halves and sends them back to the controller. Another mechanism to be present in the receiver deals with missing packets. Since we are using RTP/UDP/IP, if a packet (a portion of the voice) is missing, we will have to regenerate it through the previous and next packet. 3. Controller The controller s tasks include differentiating between voice and non voice packets, and sending them to the transmitter/receiver or the buffer, respectively; determining the number of concurrent phone conversations and their destinations; and repackaging voice packets. The condition for which a packet is to be stopped is first, it is a voice packet, and second, there is more than one conversation at a common destination. If both conditions are valid, the voice packet will be placed on a buffer for a specified amount of time, whence it will wait for the second packet so as to merge. -2-

Deviation from the Proposed Design 3 4. Ethernet Communicator Another component of this project is the routing of packets in and out of our system, and protocol management. This component will communicate with external interfaces. Deviation from the Proposed Design Overall System Functionality wise, we achieved what we planned. Throughout the development of the VBSS product, we have modified our proposed design in order for the system to function more robust, more versatile, and to perform with higher quality. The deviation therefore lies on the hardware of the system. The original proposed hardware and software system overview is shown in Figure 3. Figure 3: Proposed Design Overview of Hardware and Software In the Proposed design, we make use of the PowerPC405 processor for our system because of its high processing speed clocked at 300MHz. At the later stage of in the development, we realized that in order to implement the 1024 points FFT/IFFT and the G711 Codec to handle voice packet sending from the VoIP phones, we need to utilize the Fast Simplex Link (FSL) bus. In addition, FSL is only accessible with the processor MicroBlaze. Therefore we have to modify our proposed design as shown in Figure 4. -3-

4 Figure 4: Current Design Overview of Hardware and Software Although the MicroBlaze processor runs only at 100MHz, which is three times slower than the PowerPC, it already achieves the required system capacity according to our analysis. In addition, implementing algorithms on hardware using FSL is more convenient and much easier since FSL is single connection, which means there is no need to touch the peripherals and the processor every time we implement a new algorithm as in the proposed design case where we implement the algorithms on the Processor Local Bus (PLB). -4-

Assessment of Project Management 5 Assessment of Project Management Budget The table below compares our estimated cost at the beginning of the semester. We have tried to find funding from multiple sources. We have applied Engineering Science Student Endowment Fund and John Wighton Fund, as well as we tried to contact some companies which are related to our project, such as Ascalade. However we are not very lucky, none of the organizations has provided us any funding. Fortunately we manage to minimize our cost to almost one third. With professor Lakshman One s help, we are managed to borrow the FPGA platform from Professor Lesley Shannon. Since we have changed our system layout, we only used on low-end PC which is contributed by one of our group member, and we didn t need the 1.8GHz PC. The most expensive devices were four VoIP phones, they cost $80 each. We didn t have many other miscellaneous components; most of them were cables and power bars, which were all contributed by our team members. Table 1: Budget Summary for Cheri Perception VBSS Prototype Model Development Estimated Item Actual Cost Note Cost FPGA embedded Platform 473 0 Borrowed one from a professor Low-end PC 0 0 PC 400 0 Router, Switch 70 20 VoIP phone, SIP compatible 180 320 4 VoIPs, $80 each Software License Fee 117 0 Miscellaneous 200 0 Total 1440 340 Timeline The following Gantt chart compares our initially planned schedule verses actual time distribution. Our plan does not really match the reality; we often faced problems and new issues that we were not expected as the project goes. These affected our schedule a lot. We believe if we need to do another schedule in the future, we will have more experience and able to come up with a more reality schedule. -5-

Assessment of Project Management 6 Figure 5: Gantt Chart of Proposed and Actual Schedule -6-

Future Design Plans 7 Future Design Plans VBSS has a great potential for further research and improvement. There are two major directions to develop VBSS to a more success product. 1. Data Compression and Network Bandwidth Saving As suggested by instructor One during our demo presentation of our product, it is interesting to have the system saving bandwidth over the current existing VoIP network. In terms of Local Area Network (LAN), the VBSS can save around 30% of bandwidth usage as a result of the capability of the VBSS of combining more than 60% of the voice packet. However, once the packet is sent over the Internet, the bandwidth usage or bandwidth saving amount is unpredictable. And because data compression is already done by VoIP Service Company when a packet is sent over the Internet, it will be interesting to implement an additional data compression over the existing system. 2. Voice Filtering Quality Currently, VBSS can perform with a stable and satisfactory level. The separated voices at the destinations can be heard clearly with little noise. Although the combined voice packets can be separated and processed under VBSS, the received voice quality is still not so good as the ordinary VoIP phones where bandwidth is not saved. We would like to research more in the voice filtering area to improve the voice quality of VBSS. Interpersonal and Technical Experiences Tilson Chung (CTO) Working on this project was a challenging and exciting experience. There were always fear that we would not be able to finish the project on time because the amount and difficulty of work exceeds our or even the professors expectation. However, with great effort from each member of our team and lots of external help such as the professors, we were able to finish and test our prototype to prove that our concept and design actually worked. We were very ambitious in this project for attempting to design and build a product heavily reliant on applying voice processing and signal processing algorithms. Our team worked well together. Everyone in the group always treated each other with respect and everyone worked equally as hard on the project. It was a great team and I greatly enjoyed working with this team. I also had a lot practice on my writing skills. In addition, all of us also got a lot of experience on how to do professional presentations, documentation, functional and design specifications. There is still room for improvement for this project. It is certainly our interest to develop and improve the product in the future. -7-

Interpersonal and Technical Experiences 8 Bryan Cua (CEO) Fulfilling, like a bottle of water on a sunny day in a construction yard; though the house does not even resemble its dream, it is nevertheless fulfilling. We currently finished the prototyping stage, in which we insure our technology actually performs. Hopefully, though, this project will see its completion. After all, we did spend a little over a year on it. And here's how it all began. Metaphorically speaking, we saw a burglar-tracking camera and decided to build a house on top of it. Our research pointed us in many directions, and we merely picked the easiest one to implement, though it wasn't as simple as it seemed. And so, we decided to test our camera, and halfway through, started buying wood, concrete, and nails. As well, it seemed that poor quality hammers and saws were part of the package. Instead of spending additional money, we decided to utilize these tools at the cost of development time. Our first dilemna came with how the house was to be built. Were we to try to create our own architecture, or follow suit on old architectures? Even though at first we tried to build our own architecture, in the end, however, we still followed suit and modified a template to suit our needs. However, this proved a task in itself, and so, I feel very fortunate in our decision. As perceived, there are many different errors in our flow. First, we wasted a lot of time trying to optimize the design before actually designing it, where instead, we should have optimized bottleneck areas. Second, we tried to build out of a technology instead of finding technology to suit what we wish to create. Third, we used poorly created tools. As a first larger-scale project with a full implementation, I believe we had finished it well. However, our project is not over yet. There is much much more to learn. Cathy Zhang (CFO) It s been a great experience to work on this project. I m glad that I have three friendly, knowledgeable, and efficient group members, Bryan, Hubert, and Tilson. Throughout the semester, we ve been meeting together to discuss problems, share ideas, work on the project, and have funs. It is the first time for most of us to design and more importantly to actually go through all the stages and come out with a well working product. When we just start this project, we feel it s exciting and challenge, at the same time we also feel wondered. Bryan and Hubert started the idea and researching about one year ago, our original idea were keeping change and improving as we found out more information and the difficulties of our approach. Our project covers a wide range of knowledge, in which some of them were never touched before for us. It was a great experience which allows us to gain knowledge and trained us to be more professional and mature. In addition, our product was very success, and able to meet the major requirement we designed earlier. I would like to thank all the team members for their hard working and time. -8-

9 Conclusion After lots of hard work, Cheri Perception was able to successfully achieve a functional Voice over IP Bandwidth Saving System. Our product helps many companies to achieve the goal of having a complete and convenient communication system without restrictions over long distance range and at the same time maintain a low cost. Sources and References [1] Maximum Likelihood Pitch Estimation. Wise, James D. 5, s.l. : IEEE Transactions on Acoustics, Speech, and Signal Processing, 1976, Vols. ASSP-24. [2] Cochannel Speaker Separation by Harmonic Enhancement and Suppression. Morgan, P. David, et al. 5, s.l. : IEEE Transactions on Speech and Audio Processing, 1997, Vol. 5. [3] Parsons, Thomas. Voice and Speech Processing. New York : McGraw-Hill Inc, 1987. [4] Deloitte Touche Tohmatsu. [Online] 2004. www.deloitte.com/dtt/research/0,1015,cid=64018&pv=y,00.html. [5] Davidson, Jonathon, et al. Voice over IP Fundamentals. Indianapolis : Cisco Press, 2007. [6] Markel, J. Linear Prediction of Speech. New York : Springer-Verlag Inc, 1976. [7] IEEE Xplore. [Online] IEEE, 2006. http://ieeexplore.ieee.org/. [8] G.7xx Audio (Voice) Compression Protocols (CODEC) Overview. Javvin network management and security. [Online] Javvin Technologies Inc., 2005. http://www.javvin.com/protocolg7xx.html. [9] G.711. Wikipedia: The Free Encyclopedia. [Online] Wikimedia Foundation, Inc., 2007. http://en.wikipedia.org/wiki/g.711. -9-