Title: Introduction and Architectures
1Introduction and Architectures
INF SERV Media Storage and Distribution Systems
2Overview
- Intro
- about the course
- multimedia applications and challenges
- Architectures
- Media (Video) on Demand
- Machine internals
- Video server structures
- Examples
3INFSERVThe Course
4Content of INFSERV I
architectures
file systems
media data
distribution
protocols
resource scheduling
topologies
5Content of INFSERV II
- System architectures (server and system
designs) - Media data (wire and file formats, codecs)
- Media characteristics and user behavior
(processing multimedia data, user
interactivity) - Resource management (CPU and memory management)
6Content of INFSERV III
- Protocols with Quality of Service (QoS)
(specific and generic QoS approaches) - Adaptation and mobility (various clients,
different amount of resources) - Storage systems (management of multimedia files,
retrieval) - Distribution(use of caches and proxy servers)
7Content of INFSERV IV
- Student assignment
- either
- theoretical (literature) exercise find, read
and present papers - or
- practical exercise programming and software
benchmarking - assignment must be reported and presented to the
class at the end of the course independent of the
type chosen
8Pensum INFSERV
- Approved presentation of student assignment
- Oral exam (possibly 28-29/11)
- all transparencies from lectures
- content of own student assignment
9Applications and Challenges
10Applications
- Multimedia enriches the user interface giving new
applications - Broadcast server is only VCR substitute (e.g.,
MTV Europe) - Media-on-Demand (MoD)
- Video-on-Demand (VoD) (e.g., Bell Atlantic)
- News-on-Demand (NoD) (e.g., CNN, BBC)
- Learning-on-Demand (LoD)
- Virtual worlds
- video conferencing (e.g., USITs electronic
classroom) - games (e.g., Quake, )
11Requirements
- Application
- QoS time sensitivity
- resource capabilities support interactive
streaming of multimedia content - Business
- scalability
- reliability
- Architectural
- topology
- cost performance
12Technical Challenges
- User end system
- real-time processing of streams (1000 MIPS for
an MPEG-2 decoder) - request/response delay (lt 150 ms for
videophones) - Storage
- real-time retrieval of contiguous media streams,
e.g. - 4000 movies 90 minutes 15 Mbps (HDTV)
40.5 TB - 2000 CDs 74 minutes 1.4 Mbps 1.4 TB
- Network
- real-time transport of contiguous media data
13Media-on-Demand (MoD) Systems
- Classification parameters
- structure of movies
- interaction
- presentation form
- Common directions
- analog ? digital media
- distribution ? interaction
- media broadcasting ? media multicasting ?
personalized media - linear movies ? branched movies ? variable
movies - Evolution
- broadcast - traditional, no user control
- pay-per-view - limited interactivity
- quasi MoD - distinction into user groups, limited
timely control - near MoD - same media distributed in intervals
- true MoD - full user control, VCR capabilities,
bidirectional
14Television (Broadcast)
time
channels
sender
receiver(s)
- analog or digital
- one program per channel
- linear movies
15Near Video-on-Demand (NVoD)
time
channels
sender
receiver(s)
- analog or digital broadcasting
- one program over multiple channels
- time-slotted emission of the program
- linear movies
16(True) Video-on-Demand (VoD)
time
movies
sender
receiver(s)
- digital uni- or multicasting
- control channels
- linear movies
17Comparison TVoD vs. NVoD
18Interactive Vision
time
movie
sender
receiver(s)
- digital uni- or multicasting
- control channels
- fixed non-linear movies
19Cyber Vision
time
sender
receiver(s)
- digital uni- or multicasting
- control channels
- variable non-linear movies, e.g.,
- - games, virtual reality,
20Application Classification Overview
Cyber Vision
variable
Interactive Vision
movie structure
branched
HDTV
VoD
digital
TV NVoD
linear
presentationform
unidirectional
VIDEO
interaction
analog
bidirectional
21Media (Video) on Demand
22Challenges
- VoD in LANs is solved OVERPROVISIONING works
- established in studio business
- established in hotel/hospital/plane/ business
- VoD in WANs
- goals
- network-based distribution of media content to
consumers - bring control to users
- assumptions
- overprovisioning of resources will NOT work
- no central control of delivery system
- programs
- need for interoperability not from a single
source - need for co-operative distribution systems
- amount of data
- estimated 65000 movies made in 1995 ? 260 TB
MPEG-2 data - additionally, data from TV-series, sport clips,
news, - historically
- much attention as interactive TV (ITV) some
years ago - many (not successful) field trials
23ITV Network Architechture Approaches
- WAN backbones
- SONET
- ATM
- Local distribution network
- ADSL (asymmetric digital subscriber line)
- FTTC (fiber to the curb)
- FTTH (fiber to the home)
- HFC (hybrid fiber coax)
- Internet WAN
- Diffserv over MPLS (multi-protocol layer
switching) - point-to-point Gbps ethernet
- Internet local
- IP over the old distribution networks
ATM / SONETbackbone network
wireless
Internet based systems
ATM
telephone
cable
24Concerns Internet-Based VoD Systems
- Can technical problems be mastered?
- broadband communication to every home
- user-friendly end systems
- server technology
- Market success?
- what prices will consumers accept?
- high equipment (HW SW) costs
- data costs
- will it be competitive?
- to existing TV programs
- to video rentals
- what is the consequence if ITV field trials in
USA and Europe? - no big success
- only a few private consumers willing to
participate - trials were cancelled or switched from TV-based
to PC-based platforms
25Driving Forces
- Hardware/software (IT) companies
- computer (e.g., IBM, HP, Sun, Microsoft, )
- consumer electronics (e.g., Sony, Philips, )
- Network companies
- telephone (e.g., Telenor, Telia, BT, ATT, )
- cable TV (e.g., UPC, Time-Warner Cable, )
- Content companies
- media
- movies (e.g., Time-Warner, Disney, Paramount, Leo
Kirch, ) - TV programs (e.g., NRK, TV2, TV3, RTL, )
- hyper media information bases (e.g., Springer,
Bertelsmann, ) - home-shopping (e.g., Quelle, OTTO, )
- video games (e.g., Nintendo, Sega, Microsoft, )
26VoD Deployment Status I
- Digital Video Broadcast (DVB)
- no VoD
- cable, antenna, or satellite broadcast
- some NVoD scheduling approaches (e.g., TV 1000)
- Digital Audio-Visual Council (DAVIC)
- defines interfaces only
- no standardization of algorithms for
interoperation - Internet Engineering Task Force (IETF)
- currently no large-scale, wide-area video
distribution - sporadic use of cooperative web caching
- starting AV caching considerations
- defines protocols and inspires interoperability
testing
Broadcast world suited for Near
VoD Broadcast world suited for True
VoDInternet world suited for True VoD
MPEG 4 suited for Interactive Vision
27VoD Deployment Status II
28VoD System Architecture
local distribution network
backbone network
local distribution network
local distribution network
29VoD Storage Hierarchy
completeness of available content
- Popularity of moviesnot all are equally popular
most request directed to only a few (Zipf
distribution) - Use hierarchies
- Straight forward hierarchy
- popular videos replicated and kept close to
clients - locality vs. communication vs. server costs
30VoD Components
- Servers
- Networks
- backbone
- local networks
- Intermediate nodes
- routers
- proxy cache servers
- replica servers
- End-systems
- PCs
- TV sets with set-top boxes
31Traditional Server Machine Internals
32General Operating System Structure and Data Path
user space kernel space
33Example Intel Hub Architecture (850 Chipset)
I
Intel D850MD Motherboard
RDRAM connectors
CPU socket
RDRAM interface
system bus
hub interface
PCI bus
Memory Controller Hub
I/O Controller Hub
PCI connectors
34Example Intel Hub Architecture (850 Chipset)
II
Notethese transfers only show data movement
between sub-systems. Additionally, data touching
operations within a sub-system will require that
data is moved from memory and to the CPU, e.g.
- checksum calculation - encryption - data
encoding - forward error correction
Pentium 4 Processor
registers
cache(s)
RDRAM
RDRAM
RDRAM
RDRAM
PCI slots
PCI slots
PCI slots
35Example IBM POWER 4
POWER 4 chip
core interface switch
L2
fabric controller
file system
L3
memory controller
GXcontroller
L3 controller
communication system
application
network card
PCI slots
remote I/O(RIO) bridge
PCI host bridge
PCI-PCI bridge
disk
PCI slots
PCI host bridge
PCI-PCI bridge
NoteAgain, data touching operations add
movement operations
36Memory Hierarchies
- We cant access the disk each time we need data
- Typical computer systems therefore have several
different components where data may be stored - different capacities
- different speeds
- less capacity gives faster access and higher
cost per byte - Lower levels have a copy of data in higher
levels - A typical memory hierarchy
tertiary storage (tapes)
price
speed
secondary storage (disks)
main memory
capacity
cache(s)
37Storage Costs Access Time vs Capacity
typical capacity (bytes)
access time (sec)
from Gray Reuter
38Storage Costs Access Time vs Price
dollars/Mbytes
access time (sec)
from Gray Reuter
39Internal Server Design
- Stream retrieval from disk and push to network
- buffer requirements
- bus transfers
- CPU usage
- concurrent streams (can be merged??)
- storage (disk) system
- scheduling ensure that data is available in
time - block placement contiguous, interleaving,
striping -
- Stable operations
- redundant HW
- multiple nodes
- Much more, e.g., caching/prefetching, admission
control,
40Video Server Structure
41Video ServerServer Components Switches
Tetzlaff Flynn 94
- Internal content directory
- External content directory
42Video Server Components
incomingresolve request
incomingdata request
delivered resolution
delivered data
network attachment
content directory
control/application server
data server
43Video ServerSimple General Server Architecture
Sitaram Dan 00
- Storage subsystem
- stores data
- different devices
- Network subsystem
- transmit MM data
- Processor subsystem
- executing part
- management and operations
storagesubsystem
network subsystem
processor subsystem
control server
data server
clients
application server
- Application server
- user interface
- billing
- content database
- user database
- service gateways
- Data server
- data delivery
- specialized file system
- buffer manager
- data importer/exporter
- Control server
- administrator
- admission control
- optimization
44Video ServerDirectory Access Data Retrieval
- Two-step retrieval
- problemresource management
- Request redirection
- problemclient gets data from another machine
45Video ServerDirectory Access Data Retrieval
- Pull model
- client sends several requests
- deliver only small part of data
- fine-grained client control
- favors high interactivity
- suited for editing, searching, etc.
- Push model
- client sends one request
- streaming delivery
- favors capacity planning
- suited for retrieval, download, playback, etc.
46Video ServerServer Topology I
- Single server
- easy to implement
- scales poorly
- Partitioned server
- users divided into groups
- content assumes equal groups
- location store all data on all servers
- load imbalance
47Video ServerServer Topology II
- Externally switched servers
- use network to make server pool
- manages load imbalance(control server directs
requests) - still data replication problems
- (control server doesnt need to be a physical box
- distributed process) - Fully switched server
- server pool
- storage device pool
- additional hardware costs
- e.g., Oracle, Intel, IBM
48Video Distribution ServerTypical In the
Internet Today
- Push systems(pull in video editing/database
systems) - Traditional (specialized) file systems not
databases for data storage - No in-band control (control and data information
in separate streams) - External directory services for data
location(RTSP/control server data pump) - Request redirection for access control
- Single stand-alone servers ? (fully) switched
servers
49Server Examples
50Video Server Research Status
Härtig,Sitaram,Dan,Nahrstedt,Steinmetz, Klas,
Shulzrinne,Coulson,Seltzer,Rangan,Zhang,Hutch
inson,
Research covering allcomponents is rare
51Video Server Product Status
1) Real server, VXtreme, Starlight, VDO, Netscape
Media Server,MS Media Server, Apple Darwin
1) Real server, VXtreme, Starlight, VDO, Netscape
Media Server,MS Media Server, Apple Darwin
2) IBM Mediastreamer, Oracle Video
Cartridge, N-Cube
2) IBM Mediastreamer, Oracle Video
Cartridge, N-Cube
3) SGI/Kassena Media Base, SUN Media Center,
IBM Video Charger
3) SGI/Kassena Media Base, SUN Media Center,
IBM Video Charger
52Real Server
- User space implementation
- one control server
- several protocols (1-3)
- several versions of data in same file
- adapts to resources
- Two formats
- Reals own
- MPEG-2 version with stream thinning(dropped
with REAL ?) - Does not support
- management
- Quality-of-Service
- load leveling
1
2
3
RTP/ RTCP
Reals protocol
UDP
TCP
IP
53IBM Video Charger
- May consist of one machine only, or
- several IBMs Advanced Interactive eXecutive
(AIX) machines - Servers
- control
- data
- Lightly modified existing components
- OS AIX4
- virtual shared disks (VSD)(guaranteed disk I/Os)
- Special components
- TigerShark MMFS(buffers, data rate, prefetching,
codec, ...) - stream filters, control server, APIs, ...
specificcontrol server
RTSP
video stream API
mlib API
RTP
encrypt
filter
TigerShark MMFS
UDP
VSD
IP
54IBM Mediastreamer
- Version of Video Charger
- failed project to guarantee MPEG-2 over ATM and
Cable - similar machine setup(machine cluster)
- special HW Mowgli
- SCSI controller
- MPEG-2
- ATM or analog cable out
- moved to Video Charger
- Unlike Video Charger, Mediastreamer runs on old
IBM machines due to special HW - Special components
- TigerShark
- control server
- APIs
- special board
55nCUBE
- One server scales from 1 to 256 machines, n ? 0,
8 - Special components
- board with SCSI, connectors, HAVOC vector
processor, etc. - TRANSIT operating system
- Interface modules
- ATM
- digital video broadcast (DVB)
- ethernet
- QAM
- Real Networks agreed to integrate nCUBE's n4x
with RealSystem 8 ??
8 hypercube connectors
configurable interface
memory
PCI bus
vector processor
SCSI ports
56Small Comparison
57Summary
- Multimedia applications and challenges
- Media (Video) on Demand
- Machine internals
- Video server structures
- Video server examples
58Some References
- Sitaram, D., Dan, A. Multimedia Servers
Applications, Environments, and Design, Morgan
Kaufmann Publishers, 2000 - Tendler, J.M., Dodson, S., Fields, S. IBM
e-server POWER 4 System Microarchitecture,
Technical white paper, 2001 - Intel, http//www.intel.com
- nCUBE, http//ncube.com
59Assignments
- Practical assignmentsEach
practical assignment is performed by up to two
persons (and morewhere noted). Each person will
present his work before the class thiswill
typically be achieved by presenting the approach
to the practicalsolution in a first talk, and
the results in a second. Starting a practical
assignment comprises understanding of the
assignmentin sufficient detail, getting used to
the appropriate developmentenvironment for the
investigation, and acquiring the required
softwaretools. - Testing IXP cards This task is pending the
arrival of the IXP cards. It is meant to provide
insights into the use of the Intel IXP cards
capabilities, programming interfaces, testing
tools and so on. - Testing TCP implementations Linux has
implemented Reno TCP, which includes Fast
Retransmit and isgenerally more efficient than
BSD's Tahoe TCP because it does not enterslow
start for all packet losses. In newer Linux
revisions, the SACK(selective acknowledgement)
and FACK (forward acknowledgement) are
alsosupported as runtime-configurable options.
Test the behavior of these implementations in
different loss/delaysituations. Consider
streaming applications such as progressive
downloadin the design of your tests.
60Assignments
- Implementation of memory caching Usually,
caching is not necessary in applications
involving videotransfers due to high data rate,
i.e., data is replaced before it can bereused.
However, for very popular data, caching can
beneficial. In theINSTANCE OS enhancements, we
have implemented a buffer manager
withoutcaching. In this assignment, one should
implement a simple cachingmechanisms and test
the system with a video server workload (Zipf)
withand without the caching mechanism. - Performance of IPv4 vs. IPv6 Both IPv4 and
IPv6 are implemented in Linux network stacks.
Thecapabilities of IPv6 are far beyond those of
IPv4, not only in terms ofaddress range, but
there are also preparations for mobility
support,automatic configuration and so on.
Investigate the efficiency of both stacks by
adding probes to thenetwork stack. What is the
processing time for a package in IPv4 and
IPv6under various conditions. Consider the Raw,
TCP and UDP performance.
61Assignments
- Usefulness of replacement strategies in komssys
Data replacement is the central part of all
caching strategies, becauseit decides not which
data to store, but which to remove from storage
whenthe available space gets filled up. Data
replacement for high rate video data must be
different than fortraditional low volume,
discrete data. In this assignment, one
shouldimplement several algorithms in KOMSSYS
and monitor the number ofreplacement on a video
server workload. To be tested with a Zipf
workload. - Implementation of multicast/broadcasting schemes
in KOMSSYS In contrast to the typical on-demand
video servers, near video-on-demandsystems have
actually been deployed in vast numbers (e.g. TV
1000). Theschedules of these existing services
are very simple and not efficient fordelivery
over the Internet, and research approaches have
been developedfor years, starting with
batching. In this thesis, our example code for
batching should be replaced withone of the more
advanced strategies (pyramid broadcasting,
harmonicbroadcasting, skyscraper, patching,
HMSM, ...). The performance (in termsof packets
that are actually sent to a "dummy network" card)
of the twoshould be compared with a standard
Zipf workload. - Packet scheduling Linux networking support
provides several optional packet schedulers
askernel modules that can be used to support
load levelling for routers, butmay also be
feasible to use in servers. Test several of
these schedulers, and compare them with
severalworkloads that can be generated by a
streaming media server. Workloadsshould
generally consist of long-lived streams of
various bitrates.
62Assignments
- RTSP in C The Real-Time Streaming Protocol is
a meant to control streamingoperations such as
start, pause, stop or seek, and looks similar
toHTTP. It is the established standard for this
task in audio and videoservers, but their are
few reusable open source implementations. Port
our existing C RTSP parser to C, to make it
available as alibrary for general use. - Compare and test Real vs Darwin servers Real
has recently released a source code version of
its servers, calledthe Helix server (trial
version), and Apple's Quicktime server is
partlydeveloped in the open source under the
name Darwin. Both servers supportstandard-complia
nt protocols such as RTSP and RTP. Install both
systems, compare their structure, and compare
theirresource efficiency and latency in
answering user requests.
63Assignments
- Linux file system benchmarking Identify
different benchmarks for file systems, and choose
one or more to test different file systems (e.g.,
ext2, ext3, reiser, jfs, ) under Linux.
Install and test the file systems with respect to
multimedia server performance varying different
parameters
64Assignments
- Theoretical assignmentsEach
theoretical assignment is performed by a single
person.Theoretical assignments begin with a
paper in the topic area that willintroduce the
relevant problem and probably propose a solution.
This papermay be early work, or an older
snapshot of the state-of-the-art. It isnot meant
to contain the entire answer to the assignment.
Rather,literature study is meant to be an
important element of theassignment. More recent
papers and their results are supposed to be
foundand read by the student before the own
presentation and delivering therequired report.
During the course of the lecture, the time
1100-1200 will in someweeks be assigned to
presentations and discussions of the assignments.
Wewill discuss issues such as literature search
and structuring of researchreports. We offer
students the opportunity to discuss papers that
they havediscovered in their search for related
work concerning theirappropriateness for the
assignment.gt -memory caching ??gt -compare
zero-copy approaches ??gt -compare scheduling
approaches ?? (disk/CPU/network)gt -hvordan
routes MM traffic ??
65Assignments
- Single Machine Storage Hierarchies Computers
tend to have different bottlenecks at different
times of thedevelopment cycle. Right now,
network bandwidth is a minor issue formultimedia
applications, as is raw computing power. The most
problematicare currently RAM access speed and
bus speed, but since expensive,proprietary
solutions exist, we can expect a new shift of the
bottleneckin the near future. The cost of
storage was a major problem in early
videoservers, and third-level storage such as
tape drives and (then slow)optical storage were
taken into account for the design of
scalablesystems. We can expect these
multi-hierarchy servers to come backconsider
RAM, Flash-RAM disks, hard disks, and network
attached storage asa possible 4-step hierarchy.
Look at Doganata and Tantawi's book
chapter"Storage Hierarchy in Multimedia Servers"
for a start and explain theirinvestigation of
the internal hierarchy. What is special for
their case? Which later investigations were
made and what were the results? Why havetapes
vanished from media servers? - Capacity Analysis Video-on-demand in the early
days held no concept of efficientdistribution
mechanisms. With the dream of ATM to the desktop
andfiber-in-the-curb, sufficient bandwidth for
the delivery of individualstreams for each
request was expected. Nussbaumer, Patel and
Schaffaanalysed the server requirements in 1994
in a straight-forward manner, in"Multimedia
Delivery on Demand Capacity Analysis and
Implications". Thispaper has motivated some
serious research on the internal scalability
ofsingle servers. Which conclusions did
researchers draw from this study? In which
directions did their research go?
66Assignments
- Compare different commercial systems A number
of commercial systems have been produced since
the late 90s,and some have survived. Others
haven't but still provide insight into
theapproaches that were taken to make multimedia
servers (or, in most cases,streaming video
servers) feasible and scalable. Some examples
arepresented briefly during the lecture. Find
the existing/remainingtechnical white papers and
research papers that document these
servers,classify them. Write down and present
their features and a feturecomparison.
Examples - Kassena Mediabase (was SGI
Mediabase) - Apple Streaming Server (same as
Darwin Open Source Streaming Server) - Real
Server (also Real Helix Server) - NCube - IBM
VideoCharger (also Ultimedia Server,
Mediastreamer-0) - Oracle Video Server - SUN
Media Center (withdrawn) - Microsoft Tiger
(never sold) - Guaranteed QoS Guaranteed QoS is a phantom
idea in Internet networking. It is to
beeverything from harmful to fairness and
equality among users, or vital forcommercial use
of the Internet. Whatever the case, to achieve
guaranteedQoS, it must be supported in LANs, and
unmanaged standard Ethernet is mostcertainly
unfit to provide it. Nagarajan and Vogt did the
math foradmission control in Token Ring networks
in "Guaranteed PerformanceTransport of
Multimedia Traffic over the Token Ring". How
does their model work? Which other approaches
have been devised to guarantee QoS for
otheraccess network technologies (examples are
Ethernet, FDDI, FDDI-2, QPSX,DQDB, IP over ATM,
Frame Relay)?