Versatile Storage System - City University of Hong Kong

A Global Storage
System for User
Generated Contents
Prof. Xiaohua Jia, City University of Hong Kong
Dr. Jianfei He, Huawei Technologies Inc.
Dr. Bo Zhang, City University of Hong Kong
Outline
o Motivations and Objectives
o System Architecture
o System Design and Implementation
o Conclusion and Demo
Motivation
Application service providers (ASPs) become the de facto
owners of users’ data and social relations because of
hosting and managing them.
Facebook Server
(Frontend)
Facebook Storage
(UGC / relations)
Sina Weibo Server
(Frontend)
Sina Weibo Storage
(UGC / relations)
User
Motivation
What are the consequences?
o Big ASPs control users’ data and social relations and hijack the
users to go with them
o Medium and small ASPs are denied of opportunities to enter
the business
o User’s social relations are fragmented on multiple ASPs
o Publishing/subscribing of user’s data is limited within the
scope of an ASP
o If the user publishes the data to multiple ASPs, it’s difficult to
withdraw the published data
System Background
o As the advent of NFV and ICNs, traditional network routers are
replaced by general purpose computer servers
o There are huge amount of under-utilized storage and computing
powers scattered all over the Internet
Design Objectives
o Decouple users' UGC from ASPs
The architecture is able to store the UGC, and deliver the content to
the targeted audiences.
o Decouple users’ social relations from ASPs
The information of users social relations is integrated into the
architecture for data publishing / subscribing.
o Enable both vertical and horizontal openness
 vertical openness: ASPs interact with the system
 horizontal openness: interoperate between autonomous domains
System Architecture
End Users
End Users
Processed Data
Presentation Layer: data processing and presentation
ASPs
APPs
Presentation Layer
ASPs or APPs: use data from the
information layer to provide
advanced services to end users.
Raw User Data
Information Layer: data service and networking service
...
VSS Domain 1
VSS Domain 2
VSS Domain N
Inter-domain interface (via Internet / direct connections)
Information Layer
Multi-domain VSS (Versatile
Storage System): responsible for
content storage, access control
publishing/subscribing, and
distribution.
Information Layer: decoupling of
user data and social relations
o Decouple UGC and users’ social relations from ASPs
- Provide storage space for users
- Manage social relations of users
- Provide fundamental content services to users: content storage,
distribution, retrieval, access control, publishing and subscribing, ……
Users’ social relations are decoupled from ASPs
Alice
Facebook Client App
1. Alice sends a “friend” request
to Bob in Facebook app
Weibo Client App
VSS architecture
3. Bob becomes Alice’s friend
in Facebook app
Bob
2. Bob sees Alice become his
follower in Weibo app, then
Bob follows Alice back.
Information Layer: decoupling of
user data and social relations
UGC is decoupled from ASPs
Alice
Facebook Client App
4. Alice posts a message to
“Friends” in Facebook app
Weibo Client App
VSS architecture
Bob
5. Bob can see the message
in Weibo app
Information Layer: open
interfaces
o Vertical openness
- Any ASPs can provide content services based on the information layer of VSS
- Provide standard APIs of VSS that is open to all ASPs
o Horizontal openness
- Composed of multiple autonomous service domains
- Interconnected by “thin” inter-domain interface
inter-domain interface
Domain 1 (China)
inter-domain interface
Domain 2 (UK)
Domain 3 (USA)
Information Layer: support of
network communications
o Data communication based on file systems
- Integrate data service with networking service
- Support general data communication
o Real-time communication
- Support inter-person real-time communication
Presentation Layer
o Content Presentation
- Present the contents in appropriate formats to end users
(e.g., content sorting, filtering, sorting, format conversion, etc.)
o Additional Features
- Provide functions that are not directly supported by Information Layer
(e.g., user / content user search & recommendation)
- Process advanced logics that are not handled by Information Layer
(e.g., comment handling)
Information
Layer
Presentation Layer: data processing and presentation
ASPs
APPs
End Users
System Designs
o
o
o
o
o
o
Fundamental services
Management of user data
Management of users social relations
“Thin” API interface
Roaming of users
Security and privacy
Fundamental Services of VSS
o VSS provides fundamental content and networking services to ASPs,
such as content management, users relations management, and
communications
o VSS decouples users’ data and social relations from ASPs
User Bob
User Alice
ASPs provide advanced /
customized services
Uses Facebook
Client App
Uses Weibo
Client App
VSS provides Fundamental operations
Application Services built on top
of VSS
o VSS can support a variety of services provided by
ASPs
- Instant message services: QQ, WeChat, Line,
WhatsApp
- Blog / microblog systems: Twitter, Weibo,
Blogger, Wordpress
- Social networks: Facebook, Qzone
- E-mail systems
- ……
Management of User Data
Users can use either a client application or a web interface (web
browser) to upload local files to or download files from the VSS system.
Client Application
User
VSS Domain
Web Interface
ASP Independent
publication / notification
o Alice (in China) shares a photo to her friends Bob and Cathy
o VSS China domain stores the photo and sends the notifications to the
home domains of Bob and Cathy respectively
o Bob & Cathy can see the photo via any application
o Once the photo is deleted by Alice, all references to this photo is
removed from the entire system
Bob @ USA
USA Domain
Alice @ China
China Domain
UK Domain
Cathy @ UK
Management of social
relations
VSS manages basic social relations among the users
o VSS manages the contact list, contact groups, and the mapping
between different contact groups and ASPs / APPs for users,
decoupling users’ social relations from ASPs
Contact-1
Stars
Twitter
Contact-2
Family
Sina Weibo
Contact-3
Classmates
Facebookk
Colleagues
Personal E-mail
Stranger
Work E-mail
Contact-n
Modeling of social relations
VSS aims to model general types of user social relations on
the Internet
o 1-way friendship: Weibo, Twitter, address book, contact list
o 2-way friendship: QQ, WeChat, Line, WhatsApp, Skype, Facebook
o Workgroups / teams: Dropbox shared folder, SkyDrive Groups, QQ
/ WeChat group chat
“Thin” interface: vertical /
horizontal
A “thin” interface shall be
o Simple – a minimum set of operations for both vertical interface
and horizontal interface
o Stable – remain stable for a relatively long period of time
o Complete – able to support a variety of applications
Information Layer
Domain 1
Domain 2
Data Storage
Fundamental Logics
Relationship Management
Real-time Communication
Data Storage
Inter-domain
Interface
via Internet /
direct connections
Fundamental Logics
Relationship Management
Real-time Communication
Handling of user roaming
The data accessed by a roaming user shall be transferred from its home
domain to the destination domain.
Alice @
Domain 1
Domain 3
Domain 1
Domain 2
Domain 4
Bob @
Domain 3
Roaming
Bob @
Domain 3
Domain 5
Handling of user roaming
Why consider user roaming?
o VSS consists of multiple autonomous domains
o A user’s information is stored and managed by his home domain
Requirements of roaming handling?
o Remote authentication of users
There shall be a simple and efficient method to authenticate a roaming user
so that the access permission can be assigned to the user
o Local & remote execution of commands
Some commands can only be executed locally (or passed back to the home
domain for execution if the user is in a remote domain) for security reasons
or performance reasons
o Caching and data pre-fetch
The domain shall be able to utilize its local cache to improve users’ roaming
experience
Security and privacy issues
Security issues
o Storage security: all stored data can be auto-encrypted (if users wish)
o Security for cross-domain interoperation and communications
Secure both the data storage and the communication channels!
Inter-domain channel
Security and privacy issues
Privacy concerns of cross-domain user operations
o protect privacy of communication parties
- Hide sender’s ID from the receiver’s domain
- Hide receiver’s ID from the sender’s domain
o Protect privacy of information consumers
- Hide subscriber’s ID from the foreign domain when subscribing a foreign
domains’ information
- Hide subscription details from subscriber’s home domain when
subscribing information from a foreign domain
o How?
- By using public / private key encryption
Conclusion
o VSS system decouples ASPs from users' data and users'
social relations
o With VSS system, ASPs have to rely on better quality
services to win user groups
o VSS integrates file services with traditional networking
services. It can be used as universal communication
platform
Demo
Demo settings:
o 3 end users
- Alice
- Bob
- Cathy
Alice
Bob
Cathy
FaceBlog
SinaBlog
NetDrive
o 3 ASPs / APPs
- FaceBlog
- SinaBlog
- NetDrive
o 2 domains
- Domain @ USA
- Domain @ China
VSS Domain (USA)
VSS Domain (China)
Thank You!