Transcript Document

Java Developer Oriented
Comparison of
Communication Services
Sean Leslie
Ricardo Tirado
1
Introduction

Project Title


Self-configuration of UCM layer for CVM
Project Goal
Incorporate Google Talk and JML functionality into
CVM
 Apply self-configuration to UCM


Project Status

In-depth inspection and comparison of
communication API

Survey Paper
2
Introduction


Problem
 No criteria for rating communication services or their API
 No comparison of JML, NCB, Skype, Google Talk/Smack
 No one communication service satisfied all of our needs
Motivation
 Develop criteria for comparison
 Apply this criteria to JML, NCB, Skype, Google
Talk/Smack
 Provide Java developer oriented comparison of these four
service layers
3
Background

Historical Brief

Communication: Essential to mankind civilization

Internet: new model

perks
 Email
 Instant messaging
 Voice conversation
4
Background

Autonomic Computing


Self-configuring behavior in computing systems.
Communication Virtual Machine

Paradigm shift on the development of today’s
communication applications.
5
Background

Communication Frameworks
Reusable partial application for communication
 Implements protocols
 Focus on applications top requirements


Examples
JML
 Smack
 Eclipse Communications Frameworks

6
Communication Features

Core Features







Chat (1 to 1)
Chat (Group)
Contact List
Audio (1 to 1)
Video (1 to 1)
Video (Conference)
File Transfer

Additional Features





Scrolling Marque Text
Emoticons
Online Status
Avatar Images
Voicemail
7
Java MSN Library (JML)
Pros







Presence
File transfer
Open source
Simple
Contact list
1-1 chat
1-all chat
Cons








Some code must be
implemented
Limited features for third
part clients.
No streaming videos.
No voice chat.
No video conferencing.
No file-sharing.
Poorly documented
Project is still in early
development.
8
Skype
Pros







Presence
Contact list
1-1 and group chat
1-1 Audio calls(PC-PC)
1-1 Audio calls(PC-Land)
Voice conferencing
1-1 Video
Cons

No file-sharing

Not open source

No Video Conferencing
9
Smack/Google Talk

Why use smack?


No complete Java implementation of Google Talk API
XMPP supported
Cons
Pros







Presence
Contact List
File transfer
Open source
1-1 and Group chat
Audio Chat (PC-PC)
Well documented


Limited features in
comparison to Google
Talk
No video.
http://www.igniterealtime.org/builds/smack/docs/latest/documentation/
10
Network Communication Broker
(NCB)
Pros







Presence
Contact List
1-1 and group chat
1-1 voice chat (PC-PC)
Voice conferencing
1-1 video chat (PC-PC)
Video Conferencing
Cons

No file transfer

Not fully tested
11
Comparison (Features)



Identify the core features
Award a check for each core feature present in the API
List additional features and award a check for additional
features
Availability of features
Criteria
Additional Features
Core Features
Chat (1 to 1)
Scrolling Marque Text
emoticons
Chat (Group)
Contact List
Online Status
Avatar Images
Audio (1 to 1)
Video (1 to 1)
Video (Conference)
File Transfer
Voicemail
JML
NCB
Skype
Smack/GoogleTalk
















































12
Comparison (Documentation)


Identify different kinds of documentation
Award a check for each form of documentation
provided
Documentation
Criteria
Javadoc
Comments in Javadoc
Tutorial
White paper
Examples
Additional Features
JML
NCB
Skype
Smack/GoogleTalk




















13
Comparison (Totals)

Total each category for a side-by-side
comparison
Totals
Service
JML
NCB
Skype
Smack/Google Talk
Documentation
Core Features
Additonal Features
40%
40%
80%
80%
57%
86%
86%
71%
60%
20%
80%
60%
14
References










[1] http://www1.cs.columbia.edu/~salman/publications/skype1_4.pdf
[2] http://www.skype.com/
[3] https://developer.skype.com/
[4] http://www.columbia.edu/~cga2104/skype4java/
[5] http://blackhat.com/presentations/bh-europe-06/bh-eu-06-biondi/bheu-06-biondi-up.pdf
[6]Yi Deng, S. Masoud Sadjadi, Peter J. Clarke, Chi Zhang, Vagelis Hristidis,
Raju Rangaswami, and Nagarajan Prabakar. A communication virtual
machine.
[7] https://jain-sip.dev.java.net/
[8]http://edition.cnn.com/books/beginnings/9811/internet.time/index.html
"article on netscape v. Microsoft"
[9] http://www.livinginternet.com/i/iu.
[10]http://www.igniterealtime.org/builds/smack/docs/latest/documentation
/
15