Report Organization
Background of Data Warehouse and OLAP
Development Environment
Application System Design
Project Result
Conclusion
References
Code Comment Report
Downloads


 

Conclusion

 
6.1 PROJECT SUMMARY

A "Pocket Chat" working prototype has been designed and implemented in the project as a multi-hop Ad Hoc instant Messenger using the DSR protocol. The "Pocket Chat" implemented DSR protocol's first element Route Discovery (include Route Request and Route Reply) and put Route Maintenance as future work. We have used XML as the key technology to represent packets and topology configurations to ease the testing and validation of the prototype. The Pocket Chat project proved that DSR protocol is a feasible multihop ad hoc routing protocol for 802.11 Pocket PC based ad hoc environments in the ad hoc instant messenger project.

The "Pocket Chat" application used UDP over IP to implement the broadcasting function, and used Microsoft .NET Compact Framework and C# for the user interface and function development. Microsoft Visual Studio proved to be an easy to learn and use application platform for Pocket PC application developments. Current Microsoft Compact Framework still contain limitations on the user interfaces, e.g., controls at this time are not very powerful, like Image Control. Thus at this time, we cannot use the tool to develop sophisticated user interfaces as good as MSN or AOL messenger. With the improvement in the future release of Microsoft Compact Framework, this area maybe gets some improvement.

The original project is designed with multiple threads in mind, with separate threads handling "Awareness" packets, "Route Request packets, "Route reply" packets and 'Chat" packets. During the development and testing, we found that the system performances suffered a lot due to the multiple-thread design approach. We then reduced the number of threads for packet handling to one, thus greatly improving the performance.

The original design also featured multiple Forms approach. However, when we felt the latency of changing screen is too slow to accept, we switched to a single Form design with the capability to hide or show some areas of the Form, thus greatly reducing the latency. Also, Microsoft Compact Framework currently has some quality issues with the Message Box API; we worked around this bug by creating our own Message Box interface and functionality.

Because of lack of implementation of Route Maintenance, the application sometime suffers the performance issues due to the unreliability of the network link. With the implementation of Route Maintenance and better exception handling, the performance should be greatly improved.

Due to the testing network environment limitation, we design a topology configuration file approach with XML technology to address the issue. Project result illustrated that this approach indeed worked pretty well during the testing stage. And it is also very easy to change the network topology without the change of original code. It is also easy to scale up for many nodes.

Due to the availability of Pocket PC hardware equipments of the project, we only tested and implemented maximum numbers (four) of hops in the network. We don't have the chance to test the application when more nodes are added into the network. How to scale up the application's performance when more nodes are running in the same network would be is one of the future work areas.

Because Microsoft C# generated intermediate code running on top of Microsoft's Common Language Runtime®, the codes are interpreted during program execution. Some performance issues maybe related to this reason. Find a way to compiled the code as Just-in-time native code, or use other programming language (C++) to rewrite the application to achieve native code can result in improved performance. This can be considered as future work.

Another area that needs to be improved is the error handling. Instead of displaying error messages on the screen to slow down the performance, we can design error log files so that error message will be recorded into the files for further investigation instead of displaying to users.

Current application limited itself to text based chat only, how to incorporate voice and image and video information into the packet and use multihop ad hoc network are new challenges for the future. Microsoft Portrait® is already able to deliver voice and video over the wireless network, how to extend the work to multi-hop Ad Hoc environments is future work.

Overall, our implemented "Pocket Chat" application has successfully delivered the Route Discovery part of DSR protocol with a basic chat interface and it provided a good foundation for future work in this exciting research area.

 
Last updated: Wednesday, January 15, 2003

Home Project Notebook Contact Us