Yu Lu (Victor)
Advisors: Prof. Lawrence Wong and Prof. Mehul Motani
Interactive and Digital Media Institute (IDMI)
When
the
Internet
meets
Context
‐
Aware
Computing:
Outline
I. Motivation
II. Architectural Design of User‐Context Module III. Applications of User‐Context Module
IV. A Resource Distribution Framework under User‐Context Module V. Summary and Future Research Directions
I.
Motivation
Many fundamental and respected design principles have been
implemented since the Internet was born (ARPANET):
¾ Packet switching for multiplexing
¾ Global addressing for routing datagrams
¾ Layered architecture for task partition
¾ End-to-End arguments for defining communication protocols
I.
Motivation
Internet serves as the communication medium between two
networked hosts that Desire Speaking to each other*.
*D. D. Clark, “The design philosophy of the DARPA Internet Protocols,” SIGCOMM Comput. Commun. Rev., pp. 102–111,1995.
End-User
Networked Host
Internet Client that Desires Communicating
Internet Services
Internet Client
I.
Motivation
Pros:
¾Decrease the complexity of today’s Internet infrastructure
Cons:
¾ Absence of any end-user information and other valuable context information of Internet client
¾ Affect underlying network performance
I.
Motivation
Context-Aware Computing Cognitive Science
Context Application Layer Context Middleware Layer Context Sensing Layer Context-Aware Service Context Database and File System
Virtual Sensors Physical Sensors
External Context Provider Internal Context Provider Context Engine and Model
I.
Motivation
We propose to de-conflate end-user, networked host and Internet service on the Internet client side, and explicitly incorporate the relevant context information into the Internet protocol stack.
I.
Motivation
1. What context information is required for the Internet protocol stack? How to capture them?
2. How does the Internet protocol stack utilize and even adapt itself to the captured context information?
3. How to motivate selfish Internet clients to share their actual context information?
II.
User
‐
Context
Module
Design
Application Layer Transport Layer Network Layer Link Layer Physical Layer Application Layer Transport Layer Network Layer Link Layer Physical Layer Internet backbone Shared Database Control Subsystem Context Model Shared Database Group Context Model Control subsystem User-Context Module Server User-Context ModuleKey Context Information
Context Sensing Subsystem
Basic Context
Information Key Context Information
Group Key Context Information
Internet Client
II.
User
‐
Context
Module
Design
II.
User
‐
Context
Module
Design
II.
User
‐
Context
Module
Design
II.
User
‐
Context
Module
Design
Context Model Subsystem – End-User Modeling
Perceptual Processor Feedback Perceptual Subsystem Senses Visual Image Storage Auditory Image Storage Long-Term Meomory Working Memory Cognitive Processor Motor Processor Actuator (arm-hand-finger system, sound, etc) Motor
Subsystem Cognitive Subsystem
II.
User
‐
Context
Module
Design
Context Model Subsystem – End-User Modeling
Two important end‐user states with any individual Internet service:
¾ User Perception State: Both the end‐user’s Perceptual and Cognitive subsystems are turned ON to acquire and process the information of the corresponding Internet service.
¾ User Halt State: The end‐user’s three subsystems, i.e., the Perceptual, Cognitive and Motor subsystems, are all turned OFF with the corresponding Internet service.
II.
User
‐
Context
Module
Design
Define
two
basic
categories
of
Key
Context
Information
(KCI):
¾ COMMUNICATING STATE (CS): The end‐user stays in the
User Perception State AND the corresponding Internet service
keeps working.
¾
INACTIVE STATE
(
IS
):
The end‐user stays in the User Halt StateOR the corresponding Internet service stops working.
II.
User
‐
Context
Module
Design
II.
User
‐
Context
Module
Design
Context Model Subsystem – Context Models
II.
User
‐
Context
Module
Design
Control Subsystem
¾ The Control Subsystem directly interacting with the underlying
Internet and adjust it according to the delivered KCI.
¾ For different applications of the User‐Context Module, the
Control Subsystem may interact with different Internet protocols and services in distinct layers.
¾ Its main objective is always to improve the usability and
III.
The
User
‐
Context
Module
Application:
HTTP
III.
The
User
‐
Context
Module
Application:
HTTP
Problem
Description
HTTP/1.1* does not define the connection‐closing mechanism
¾Small fixed timeout value causes low utilization of the HTTP
connection, increases the end‐user perceived latency and
network burden. (Apache HTTP Server ‐‐‐ 5 seconds)
¾Large fixed timeout value easily exhausts busy Web server
resources, causes instability and unpredictable long end‐user
perceived latency. (Microsoft IIS ‐‐‐ 120 seconds)
III.
The
User
‐
Context
Module
Application:
HTTP
Problem
Description
In a Web session, it is difficult for HTTP to discriminate
between a persistent connection that is being used by
an Web end
‐
user and a persistent connection that is
III.
The
User
‐
Context
Module
Application:
HTTP
Problem
Solution
Application Layer Transport Layer Network Layer Link Layer Physical Layer Application Layer Transport Layer Network Layer Link Layer Physical Layer Internet backbone Shared Database Control Subsystem Context Model Shared Database Group Context Model Control subsystem User-Context Module Server User-Context ModuleKey Context Information
Context Sensing Subsystem
Basic Context
Information Key Context Information
Group Key Context Information
III.
The
User
‐
Context
Module
Application:
HTTP
III.
The
User
‐
Context
Module
Application:
HTTP
The following Control Rules is implemented on the server side:
(1) IF the Inactive State arrives, THEN the Control Subsystem
immediately signals the Application Layer to terminate the
corresponding HTTP persistent connection.
(2) IF the Communicating State arrives, THEN the Control
Subsystem signals the Application Layer to maintain the
corresponding HTTP persistent connection and wait for the next KCI.
III.
The
User
‐
Context
Module
Application:
HTTP
Internet
Experiment
Setup
Modified Apache HTTP Server 2.2
III.
The
User
‐
Context
Module
Application:
HTTP
Internet
Experimental
Results
III.
The
User
‐
Context
Module
Application:
HTTP
III.
The
User
‐
Context
Module
Application:
HTTP
Internet
Experimental
Results
III.
The
User
‐
Context
Module
Application:
HTTP
III.
The
User
‐
Context
Module
Application:
TCP
It has been proved that when multiple TCP streams compete the same bottleneck link, the stream with a smaller round trip time (RTT) can always grab a much larger share of that bottleneck link bandwidth than other streams with larger RTT.
III.
The
User
‐
Context
Module
Application:
TCP
TCP protocol always favors an Internet application with a short RTT and inevitably ignores the end-user preference. Hence, such property of TCP can easily impair the end-user’s quality of experience (QoE).
III.
The
User
‐
Context
Module
Application:
TCP
Problem
Description
Quality of Experience (QoE): the overall acceptability of an
application or service, as perceived subjectively by the end-user*.
*ITU-T. Rec. P. 10 /G. 100, Amendment 2: New Definitions for Inclusion in Recommendation ITU-T P.10/G.100, 2008.
**P. Brooks and B. Hestnes, “User measures of quality of experience: why being objective and quantitative is important,” IEEE Network, vol. 24, no. 2,pp. 8–13, 2010.
IF <Communication Situation>; USING <Service Prescription>; WITH <Technical Parameters>; THEN <QoE in Opinion Score>.
III.
The
User
‐
Context
Module
Application:
TCP
Problem
Solution
Application Layer Transport Layer Network Layer Application Layer Transport Layer Network Layer Shared Database Control Subsystem Context Model Shared Database Group Context Model Control subsystem User-Context Module Server User-Context ModuleKey Context Information
Context Sensing Subsystem
Basic Context
Information Key Context Information
Group Key Context Information
III.
The
User
‐
Context
Module
Application:
TCP
Advertised window size determined by the spare room of the receiver buffer.
III.
The
User
‐
Context
Module
Application:
TCP
recW
V
RTT
=
recW --- Advertised window size in bits set by the TCP receiver RTT --- Average round trip time of a TCP flow in seconds
TCP Flow Control Mechanism
The established mathematical model:
III.
The
User
‐
Context
Module
Application:
TCP
The
Control
Subsystem
Design
III.
The
User
‐
Context
Module
Application:
TCP
The
Control
Subsystem
Design
The following Control Rules is implemented on the client side:
(1) IF the Communicating State between the end-user and
QQQTV is deduced and meanwhile the QQQTV bandwidth share is lower than 320 Kbps, THEN the Control Subsystem
immediately reduces the advertised window size of
CuteFTP until QQQTV bandwidth share exceeds 400 Kbps.
(2) IF the Inactive State between the end-user and QQQTV is
III.
The
User
‐
Context
Module
Application:
TCP
Adjust the advertised window size by discrete PD (Proportional and Derivative) control algorithm:
( ) ( ( ) ( 1)), rec k P d W K e k K e k e k Δ = + − − rec k W
Δ --- controller output at the kth sampling time
--- target bandwidth given by the Control Rules
R
k
V --- practical allocated bandwidth at the kth sampling time
The
Control
Subsystem
Design
( ) k.
III.
The
User
‐
Context
Module
Application:
TCP
III.
The
User
‐
Context
Module
Application:
TCP
Internet
Experimental
Results
Scenario A: CuteFTP is always associated with the Inactive State, which means the end-user is unaware of CuteFTP downloading from the beginning to the end.
III.
The
User
‐
Context
Module
Application:
TCP
3. How to motivate context sharing?
(This part of work is still unpublished, and thus the
corresponding slides are removed. )
Summary
&
Summary
End-User Application Layer Transport Layer Network Layer Link Layer Physical Layer Internet ServicesInternet Protocol Stack Conventional communication pathway: from the Internet protocol stack through Internet services to the end-user side.
Summary
End-User Application Layer Transport Layer Network Layer Link Layer Physical Layer Context InformationWe add a novel communication pathway for transmission of context, and establish a closed communication loop.
Summary
Main Contributions:
¾Reveal the fact that context information can be directly used in
the underlying Internet protocol stack.
¾Design and implement a User-Context Module that can capture,
understand and utilize the context information of Internet clients.
¾ Propose a resource distribution framework that not only provides
the context-driven service differentiation, but also incentivizes
the actual context sharing and moderate competition among selfish and rational Internet clients.
Future
Directions
Advanced context models and approaches for new KCI:
¾Introduce latest cognitive psychology, brain-computer
interface (BCI) as well as neuroscience for building more accurate context models.
¾Adopt data mining and machine learning algorithms to
automatically derive long-term end-user’s interaction patterns. (One of our conference papers adopts decision tree C4.5 to derive the context model.)
Future
Directions
More applications of the existing User-Context Module:
¾Explore interactions with many other communication protocols in different layers, such as Real Time Streaming Protocol (RTSP) on the Application Layer and Internet Protocol Security (IPsec) on the Network Layer.
¾Implement the resource distribution framework on more Internet systems and services, such as Streaming Media System.
Future
Directions
Context usage in future Internet architecture:
¾Introduce the deduced KCI into architectures of next generation Internet that use the clean-slate design approach, such as in the identifier-locator split architecture*.
¾Design a set of application programming interfaces (API) that any future protocols could use to extract the captured context information.
Selected journal papers:
Yu Lu, Motani Mehul and W. C. Wong, “When Ambient Intelligence Meets the
Internet: User Module Framework and its Applications,” Elsevier Journal of
Computer Networks, 2012. (accepted and to appear)
Yu Lu, Motani Mehul and W. C. Wong, “A Resource Distribution Framework
Incentivizing Context Sharing and Moderate Competition,” submitted to
IEEE/ACM Transactions on Networking.
Jinkun Liu, Yu Lu, “Adaptive RBF neural network control of robot with actuator
nonlinearities,” Springer Journal of Control Theory and Applications, vol. 8, no. 2,
pp. 249-256, 2010.
Peng Li, Yu Lu, Shen Li and Hongxing Wei, “Realization of Embedded Multimedia
System Based On Dual-Core Processor OMAP5910,” International Journal of
Selected conference papers:
Yu Lu, Motani Mehul and W. C. Wong, “The User-Context Module: A New
Perspective on Future Internet Design," in Proc. International Conference on
Ambient Systems, Networks and Technologies (ANT), Niagara Falls, Ontario,
Canada, Sept., 2011.
Yu Lu, Motani Mehul and W. C. Wong, “When Ambient Intelligence Meets Internet
Protocol Stack: User Layer Design," in Proc. IEEE International Conference on
Embedded and Ubiquitous Computing (EUC), Hong Kong SAR, China, Dec.,
2010.
Yu Lu, Motani Mehul and W. C. Wong, “Intelligent Network Design: User Layer
Architecture and its application," in Proc. IEEE International Conference on