Transparent Computing
Transparent Computing
Transparent Computing
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Transparent</strong> <strong>Computing</strong>:<br />
A New Paradigm for Pervasive <strong>Computing</strong><br />
Prof. Yaoxue Zhang<br />
Tsinghua University
Contents<br />
1. Introduction<br />
2. What is the Idea?<br />
3. What is the Difference?<br />
4. An Implementation Example<br />
5. Demonstration and Application<br />
6. Conclusions
1. Introduction<br />
1.1 Change of <strong>Computing</strong> Paradigms<br />
Mainframe<br />
<strong>Computing</strong><br />
Desktop-based<br />
Network<br />
<strong>Computing</strong><br />
Pervasive <strong>Computing</strong><br />
( Ubiquitous <strong>Computing</strong><br />
T/M<br />
C/S C/N C/VE<br />
Everything is a Computer<br />
Technologies disappear<br />
~1970’s ~2000’s 21st Century
1.2 The Characteristics of Pervasive <strong>Computing</strong><br />
Remote communication<br />
Fault tolerance<br />
High Availability<br />
Remote information access<br />
Distributed security<br />
Distributed<br />
Systems<br />
Mobile<br />
<strong>Computing</strong><br />
Pervasive<br />
<strong>Computing</strong><br />
Mobile networking<br />
Mobile information access<br />
Adaptive applications<br />
Energy-aware systems<br />
Location sensitivity<br />
(From M. Satyanarayanan, 2001)<br />
Personalized Service<br />
(Active Service)
1.3 Some Problems to Realize Pervasive <strong>Computing</strong> in<br />
Traditional Computer Systems<br />
<br />
Any computer consists of a hardware platform and<br />
a software platform<br />
<br />
Users can not choose services from heterogeneous<br />
software platform underlying on the same hardware<br />
platform<br />
It is not easy and effective to :<br />
•Use Smart Spaces<br />
•Provide personalized services<br />
•Provide powerful computing ability even in light-weight computers<br />
•Localize scalability in heterogeneous OSes
1.4 <strong>Transparent</strong> computing<br />
<br />
<br />
<br />
Realize "stored program " (Von Neumann<br />
Architecture ) in network environment<br />
Users can select services from heterogeneous OSes<br />
environments<br />
Personalized Services,<br />
e.g. Windows and Linux<br />
Execution and Storage of Program are separated<br />
in different computers<br />
Execution: light-weight devices or clients<br />
(as assembling factory)<br />
Storage:<br />
Servers (as Warehouse)<br />
JITC (Just In Time <strong>Computing</strong>)
2. What is the Idea?<br />
A new Meta OS which can control OSes to<br />
realize:<br />
<br />
<br />
<br />
user selection of services<br />
streaming program<br />
separation of execution and storage<br />
of Program
2.1 General Model<br />
<br />
<br />
Users choose OS & Application Using light-weight devices without OS.<br />
Meta OS schedules services to Clients to execute.
2.2 Proposed Topology of Trans-<strong>Computing</strong><br />
Paradigm<br />
TC<br />
( <strong>Transparent</strong><br />
Clients )<br />
TDN<br />
( <strong>Transparent</strong><br />
Delivery Network )<br />
Light-weight devices:<br />
PC, PDA, Intelligent<br />
Mobile Phone, Digital<br />
Appliance, Dedicated<br />
clients, et al.<br />
Ethernet, CATV, 802.11,<br />
IEEE 1394, et al.<br />
(Ubiquitous Communication)<br />
TS<br />
( <strong>Transparent</strong><br />
Servers )<br />
Regular PC, PC<br />
Server, et al.
2.3 The Architecture of Trans-<strong>Computing</strong><br />
Application Layer<br />
Application Layer<br />
Application Layer<br />
Heterogeneous OS Layer<br />
Meta OS Layer<br />
(VDMS, NSAP, MRBP, etc)<br />
Heterogeneous OS Layer<br />
Heterogeneous JITC Layer OS Layer<br />
(Non-Resident)<br />
Other Part of Trans-<br />
<strong>Computing</strong> Other Part Support of Trans- Layer<br />
<strong>Computing</strong> (VDMS, Meta NSAP, Support OS etc) Layer<br />
(VDMS, NSAP, etc)<br />
MRBP<br />
MRBP MRBP<br />
TDN Layer<br />
Network Delivery Layer<br />
Network Delivery Layer<br />
TDN Layer<br />
TS<br />
TC<br />
Resident Module<br />
Non-Resident Module
2.4 The Modules of Meta OS<br />
+<br />
4VP System<br />
VUM (Virtual User Management )<br />
VFM (Virtual File Management )<br />
VDM (Virtual Disk Management )<br />
VIOM (Virtual I/O Management )<br />
4VP<br />
(Non-Resident)<br />
MRBP(Multi-OS Remote Booting Protocol)/<br />
NSAP(Network Service Access Protocol)<br />
Server Main Board<br />
MRBP<br />
Client Main Board<br />
TS<br />
Network<br />
TC
Overall architecture of Trans-Com with a server<br />
and a single client<br />
NSAP<br />
File<br />
redirector<br />
Vdisk<br />
Driver<br />
VIOM<br />
Manage<br />
ment<br />
VFile<br />
System<br />
Virtual Disk<br />
TS<br />
TC
MRBP: Start Delivery and Booting of OSes<br />
TS<br />
TC<br />
Start<br />
Waiting<br />
NO<br />
If Received the signal<br />
from a client<br />
Search the Boot blocks<br />
Send the Boot block<br />
numbers to Client<br />
Get Start Interruption<br />
Signal<br />
Send Message to Servers to<br />
Search Oses Boot blocks<br />
If get the numbers of<br />
blocks, then show to user<br />
Wait for user Choose for<br />
Default Start<br />
Start NSAP<br />
Search and delivery<br />
Meta OS<br />
NO<br />
Default<br />
If User Choose a OS<br />
Start NSAP to get Meta<br />
OS<br />
Page Scheduling of<br />
instance OS<br />
instance OS Running
3. What is the difference?<br />
Comparing with traditional paradigm<br />
<br />
<br />
<br />
<br />
<br />
Realize stored program in network environment.<br />
User chooses OS.<br />
Clients are bare, light-weight machines, but it can<br />
run heterogeneous OSes and applications<br />
efficiently.<br />
Multi-Users share single version software<br />
installed in servers.<br />
All Programs are centralized in Servers, easy to<br />
management.
4. An Implementation Example<br />
4.1 Implementation Using C/S model<br />
Inetrnet<br />
TS<br />
NAT<br />
NAT:Network<br />
Address<br />
Translation<br />
TC<br />
…<br />
TC<br />
…<br />
TC<br />
Topo of TransCom System
TC:<br />
• Low Power:
Testbed<br />
<br />
<br />
4.2 Performance Analysis<br />
Hardware Configuration<br />
TC (30 sets)<br />
Intel Celeron 1 GHz with 128 MB RAM<br />
Onboard network card: 100 Mbps<br />
TS (3 sets)<br />
AMD Athlon64 3000+ with 2 GB RAM<br />
Hard Disk: Seagate SATA 7200 RPM, 2*80 G (RAID 0)<br />
Onboard network card: 1 Gbps<br />
TDN<br />
Huawei-3Com Ethernet switch with<br />
48 100 Mbps interfaces (for client)<br />
and 2 1 Gbps interfaces (for server)<br />
Software Configuration<br />
TS<br />
TC<br />
<br />
<br />
Windows 98, Windows 2000, Linux<br />
and other application software<br />
No OS and applications
Booting performance<br />
100<br />
90<br />
80<br />
70<br />
BIOS<br />
PXE<br />
UOSL<br />
OS Loading<br />
Boot time (s)<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
PC 1 2 3 4 5 6 7 8 9 10 12 14 16<br />
TransCom client number<br />
X-axis: Number of TC<br />
Y-axis: Boot Time
NSAP Throughput<br />
X-axis: Request Size<br />
Y-axis: Throughput<br />
Throughput (MB/s)<br />
16<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
VD (128M)<br />
VD (256M)<br />
VD (512M)<br />
VD (1G)<br />
VD (2G)<br />
VD (2G No cache)<br />
LD (128M)<br />
Throughput (MB/s)<br />
16<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
VD (128M)<br />
VD (256M)<br />
VD (512M)<br />
VD (1G)<br />
VD (2G)<br />
VD (2G No cache)<br />
LD (128M)<br />
2<br />
2<br />
0 1 2 4 8 16 32 64 128<br />
Evaluated with SQLIO from Microsoft<br />
<br />
<br />
Request Size (KB)<br />
Read, unbuffered<br />
0 1 2 4 8 16 32 64 128<br />
Request Size (KB)<br />
Write, unbuffered<br />
Random access: performance better than local disks with small<br />
request size<br />
Random access: performance better than local disks with small<br />
request size
Function Evaluation (Start times)<br />
Applications/OS 1 PC 1 TC 10 TCs 28 TCs<br />
Booting OS<br />
Windows2000<br />
Server<br />
Office Applications<br />
53"13 48"73 70"62<br />
142"57<br />
Word 2003 2"23 1"26 2"28 11"50<br />
Image processing applications<br />
PhotoShop V7.0<br />
13"29<br />
11"08<br />
16"48<br />
1'0"51<br />
Flash V6.0<br />
18"62<br />
7"16<br />
31"41<br />
1'16"56<br />
3D MAX V8.0<br />
29"71<br />
25"68<br />
34"24<br />
1'16"56<br />
Copying files<br />
28"24<br />
24"33<br />
49"48<br />
4'6"99<br />
Playing multimedia<br />
Windows Media<br />
Player<br />
smoothly<br />
smoothly<br />
smoothly<br />
smoothly
5. Demonstration and Application<br />
Demo<br />
Remote Startup different OSes and applications on the same TC<br />
Demo Script:<br />
1. Startup Windows 98 System;<br />
2. Startup Win2000 System, and run<br />
some applications such as Word,<br />
IPTV, and etc;<br />
3. Startup Linux (Redhat) System,<br />
and run some applications.<br />
Demo Video<br />
(Click for play)
Applications
6. Conclusions<br />
<br />
<br />
We Proposed a new computing paradigm:<br />
Trans-<strong>Computing</strong><br />
Some Issues need to be researched to support<br />
pervasive computing:<br />
‣ How to support more OSes?<br />
‣ How to support more devices?<br />
‣ How to support more extensive applications?
Thanks!
A Computer system without OS can<br />
only do nothing<br />
Applications<br />
Applications<br />
Applications<br />
OS & Tools<br />
Windows<br />
or<br />
UNIX<br />
Main board<br />
X86<br />
SPARC
Users can not choose services freely in<br />
traditional computing paradigm<br />
• Desktop OS (Such as Windows) is too big to run<br />
in light-weight computer systems.<br />
• Embedded OS (such as Palm) is not so powerful<br />
to support the enough applications users require.<br />
• User can not choose applications based on<br />
different OSes via the same machine. (like choose<br />
TV Program)
Stored Program<br />
Consider data and instruction as the same<br />
<br />
<br />
Stored Program has realized in the single computer<br />
system by now, stored data has realized in<br />
network.<br />
have not realized storage of instructions in network<br />
environment.<br />
<strong>Transparent</strong> <strong>Computing</strong>:<br />
<br />
Realize stored program in network environment<br />
<br />
Streaming of program
Users can choose services freely in transparent<br />
computing paradigm<br />
Instruction<br />
Compatible<br />
TC<br />
...<br />
Different OSes
C: computing<br />
M: management<br />
S: storage<br />
Server<br />
Central Storage &<br />
Management<br />
Client<br />
Distributed Execution