The document proposes a technique called CrossTalk to interconnect IM networks through bypass gateways. This avoids the scalability issues of standard gateways and prevents vendor lock-in for users. The approach was implemented in a prototype using unmodified IM clients that connects to bypass gateways. Evaluation shows the gateways can support a large enterprise workload and introduces minimal latency. Future work is discussed to handle encryption and develop a more generalized architecture.
2. Problem
Growth of social sites relying onnetwork effect
Consequences of the network effect:
Quality does not necessarily drive adoption
Popularity within social circles matters most
Users subject to vendor lock-in for social apps?
Mechanisms to mitigate vendor lock-inin social apps
3. Introduction/Motivation
Case Study: IM Networks
Simple social application, provides insight
Scalably interconnects IM networks while allowing
users to continue utilizing the client of their choice
Benefits:
Allows users to switch to new innovative clients
Permits smaller IM networks to interoperate with
larger IM services
May rekindle interest in 3rd party applications by
allowing inter-IM network message exchanges
Examples include Chat Translator, Twitter Synch, etc
4. Outline
Existing Approaches
New Idea: Bypass Gateways
Implementation
Evaluation
Future Work:
Encryption
General Architecture
5. Approach 1: Ignore Problem
AIM Server Yahoo Server
AIM Yahoo
hello
hello
Alice Dan Claire Bob
o Cannot communicate across boundaries
6. Approach 2: Client Consolidation
AIM Server Yahoo Server
AIM Yahoo
Reverse
engineered
protocols,
features lost
hello in translation
Alice Dan/Dizzle Claire Bob
o Main problem: Feature Subtraction
o Multiple identities
7. Client Consolidation Limitations
Feature subtraction
Never worked for ..unable to use transfer
me either files using Trillian
Multiple Identities
Software/Network Overhead
13.7 MB
vs
1.3 MB
8. Approach 3: Standard Gateway
AIM Server Alice and Yahoo Server
Gateway 1
MUST be
AIM buddies
Yahoo
hello
Gateway 1 Gateway 2
hello
Alice Bob
o Main problem: Scalability
o Server can easily detect/disable
9. Standard Gateway Limitations
Gateways subject to user restrictions:
Limits on buddy list size (e.g. < 512)
Limits on concurrent sessions (e.g. 1 for Skype)
Suppose IM network with 50 million users:
If maximum size of buddy list 500:
100k Gateways to cover all users
Need massive gateway replication to interconnect
millions of users
Thus, standard gateways do not scale
Gateways employ awkward semantics:
Ex: IM gtalk:user@domain.com hello
10. Outline
Existing Approaches
New Idea: Bypass Gateways
Implementation
Evaluation
Future Work
11. Bypass Gateways
Traffic flow through server
causes scalability problems
Gateway to Gateway Network
AIM Server Yahoo Server
AIM Yahoo
Gateway 1 Gateway 2
Alice Bob
12. Bypass Gateways
G2G Network
AIM Yahoo
AIM Server Yahoo Server
Hello
Gateway 1 Gateway 2 Hello
Scalable and no feature subtraction (in base network)
Hello
oBut, both Alice must be behind gatewayBob
ends
13. Outline
Existing Approaches
Our New Idea: Bypass Gateways
Implementation
Evaluation
Future Work
14. Crosstalk Components
Unmodified clients
Each user must have the ability to specify a proxy
Simple naming convention
ex: AOL user alice identified as alice@aol
Bypass gateways
Interpose between clients and servers
Gateway-to-Gateway network
Logical network
Gateways connected via DHT
15. CrossTalk Architecture
3 major functions:
Translation between AIM, MSN, Yahoo, Jabber
Bifurcating Presence Information
Merging Buddy Information
16. Gateway Processing Steps
For each user:
1. Identify protocol, wait for user to
authenticate to base server
2. Update users state in DHT
3. Retrieve foreign buddy list from DHT
4. Repeatedly : pass-through or intercept &
translate
17. Lessons Learned
Can use protocol version numbers to allow
time for reverse engineering
Must merge protocol packets carefully
Ex: AOL embeds sequence numbers in messages
that must be modified to merge information
Must scale to many TCP connections per user
Ex: MSN creates per conversation TCP connection
18. Applications Built on CrossTalk
Built 2 example applications:
IP geolocation
Last.fm information
Suppose AOL user A wants to know Yahoo user
Ys location or listening habits:
User A types /music or /location as an IM
User Ys client responds with Shakira or San Diego
Works because bypass gateways allows IMs to
reach other networks
19. Outline
Existing Approaches
New Idea: Bypass Gateways
Implementation
Evaluation
Future Work
20. Evaluation Questions
Two metrics
1. Latency: How much delay for translation?
Baseline delays vary from 5msec 230msec
2. Throughput:
What size enterprise can a single Bypass
Gateway support?
Latency: < 25 msec
Throughput: 1 desktop PC, greater than 4000 person workload
21. IM Traffic Model
Guo et. al monitored MSN, AIM traffic in an
enterprise network with > 4000 employees
Heaviest load usage characteristics:
~130 online users per protocol
~20 concurrent conversations per user
Message length of ~150 characters
~1 second interval between successive chat
messages
22. Evaluation Methodology
Modeled cross/same-to-same IM traffic
using market shares
Implemented mock IM servers to handle
same-to-same traffic
Spread clients/servers across local VMs
Gateway run on P4 3.2 Ghz, 1Gb
24. Outline
Existing Approaches
Our New Idea: Bypass Gateways
Implementation
Evaluation
Future Work
25. Future Work: Handling Encryption
G2G Network
Skype SIP
Gateway Box
Skype Binary SIP Binary
Gateway Shim Gateway Shim
Skype UI bob
dial: skype user SIP UI
alice bob
26. Future Work: General Architecture
Migrate to a new abstract client layer
Ask for services using abstract calls
Send IM, Dial Call, Get File
Insulate users from changes in technology
Protocol intelligence in the cloud
Make use of bypass gateways or shim layers to
achieve interconnectivity for unmodified clients
Use a DHT to store mappings on behalf of all
applications
Enable service composition by modeling services
as nodes in graph
27. Conclusion
Introduced new technique (bypass gateways)
that overcomes vendor lock-in and avoids
scaling limits of standard gateways
May foster third-party innovation
Larger providers cannot easily hinder and smaller
providers have incentives to join
IM gateway prototype can support throughput for
enterprise IM benchmark