\chapter{Content management}
\label{ch:contents}

IP traffic on the Internet and private enterprise networks has been
growing exponentially for some time. Today, the convergence of
computing, telecommunication and digital media is enabled by the
technology, but it is actually driven by the content. For example, in
the case of electronic publishing, lack of established
advertising and billing models and insufficient results have hindered
online advertising~\cite{b66}.

Markus Kajanto states in his doctoral dissertation the notion of
virtualization of content. Kajanto calls the initial content
``primary content'', which is divided into two parts: a virtual part and
a physical part. The virtual part of the content is distributable
through the information network, but the physical part is distributed
outside the information network. What the primary content is, depends
on the industry and application in question. From the Internet service
provider's point of view it is essential that more and more products
are already virtual of their basic nature or can be virtualized by
exploiting information networks. The same applies
also to many business processes, such as commerce, marketing, and
customer service~\cite{b66}.

This chapter describes content management on the
Internet. Section~\ref{sec:demands} gives an overview why content
should be managed.  Section~\ref{sec:modeling} gives an overview of management
information modeling technologies, such as markup languages, CIM, and
DEN. Finally, section~\ref{sec:examples_of_content_management} gives
examples of content management.


\section{Demands for Content Management}
\label{sec:demands}

In this project we mean content management as determining what kind of
data is transmitted in the network, and managing that data according
to the needs of content suppliers, information intermediaries and
customers. The purpose of the content management is to control the
flow of content during the creation and delivery of any service.

Content supplier usually creates and formulates the original content,
both the physical and the virtual part. Information intermediary
(service provider) is an organization, which matches the content
suppliers to the relevant end customers. It will also have the
knowledge of the content preferences, consumption habits of the end
customers, and what may be the optimal choice for
them~\cite{b66}. Customers then use the content through the Internet
and may also pay for it. It should be noticed that the content
supplier, information intermediary, and customer usually have
different kinds of demands of content management. The needs for
content management are, for example:
\begin{itemize}

\item \textbf{Security, proprietary rights and licenses}

Security and copyright issues must be guaranteed at the satisfying
level. For example, electronic commerce and communications
applications require the security features the most. There is also a
demand for content protection, to provide content owner a mechanism
that can robustly protect copyright and identify rightful ownership in
the court of law and to prevent illegal distribution and easy tracking
of fraud. Techniques used to content protection are for example,
cryptography, authentication, watermarking, and access control in
different services. Users should also be able to check the originality
of the content of a digital product. Content verification can be
performed by attaching digital signatures to the transmitted
data~\cite{b65}.

In the broader sense, content could also mean communications content,
such as desktop videoconference, e-mail, discussion forums, etc. The
difference between the copyright content and the communications
content is that communications content is produced and consumed at the
same time, and it is not stored for the further commercial
use~\cite{b66}.

\item \textbf{Billing}

Internet services that provide QoS (e.g. TV and radio over IP) cannot
cover costs using billing models available today~\cite{b47}. In the
Internet environment, billing has been based on flat rates and
monthly billing and only seldom on the traffic itself. Full deployment
of services with built-in cost sharing functionality could be the
final reason to converge services, such as broadcast media, into the
Internet and make them globally available. 

\item \textbf{Location and delivery}

Today the information contained on the Internet is unstructured,
unsorted, and difficult to find. For example, current search engines
are limited to textual keywords. There is the desire for Internet
multimedia search engines capable of searching and locating the
relevant sources containing the desired media types given a
description of the specific content. This will be beyond the bounds of
text currently used to formulate queries. Such capabilities could be
achieved with pre-defined, hierarchical categories and use of natural
language~\cite{b50}. 

The content must be managed throughout its entire lifetime, from
initial conception and creation, to integration in an application, and
delivery to the user, as well as the eventual archival or
destruction. Information service providers also have multiple
distribution options using a wide variety of client and network
technologies. The key to commercial success is managing information in
such a way that it can be easily located and distributed in a format
that matches the requirements of the requesting client~\cite{b63}. The
issues of secure access, and secure content and payment transaction
are also essential to the distribution of content. 

\item \textbf{Different customer needs}

Different customer needs must be provided for by traffic
prioritization and traffic guarantees. For example, policy-based
networking enables the allocation of network resources to
applications, users, and groups based on a set of defined rules. This
approach provides the control over traffic prioritization based on the
business importance of applications. 
\end{itemize}


% \section{Switching technologies}
% \label{sec:switching}

% The increase in real-time and multimedia applications have created the need to improve Internet routing technology in terms of bandwidth, performance, scalability, and delivery of new functionalities. Technologies used to develop new systems are combinations of switching and routing technologies. Routing provides robustness (scalability and flexibility) and switching provides performance (high throughput). Noticeable technologies are Ipsilon's IP Switching, Cisco's Tag Switching, IBM's ARIS (Aggregate Route-based IP Switching), Toshiba's CSR (Cell Switching Router), and MPLS (Multiprotocol Label Switching).

% This section gives a brief summary of flow differentiation, IP switching, and Tag switching. MPLS is studied in subsection~\ref{subsec:mpls}.


% \subsection{Flow differentiation}

% A flow is defined as a sequence of packets sent from a particular host to a particular destination. These packets are related in terms of their routing and any local handling policy they may require.

% Traffic differentiation is typically based on information in the packet headers of different layers in the IP protocol stack, e.g. protocol type, source/destination port, source/destination address or explicit flow tags. Two packets belong to the same flow if the values of header fields are identical. The higher up the information origins, the higher the semantic content, and thus the more precise differentiation. For example, using the content-type field of HTTP 1.1, packets can be easily identified as being part of a data, voice or video stream. On the downside, header parsing leads to performance drawbacks noticeable as increased induced traffic latency, which is only acceptable up to a certain degree for applications with real-time requirements~\cite{b60}.


% \subsection{IP Switching}

% IP switching is basically an IP over ATM technology. The IP switches
% use the hardware of ATM switches for the copying mechanism and the IP
% software for the routing. The IP switches allow packet flows to be
% switched and bypass the router, when the routing information has been
% cached in the switch. IP switching is made up of two protocols GSMP
% (General Switch Management Protocol, see~\cite{rfc2297} for
% a specification) and IFMP (Ipsilon Flow Management Protocol,
% see~\cite{rfc1953} for a specification).

% When a packet is assembled and submitted to a controller in an IP
% switch it classifies a flow. Ipsilon has currently defined two types
% of flows. \textbf{A host pair flow type} is defined for traffic
% between same source and destination IP address. There is a local
% policy in each IP switch from which it makes its own QoS
% decisions. QoS information can be included in the flow classification
% decision based upon the application, the type of service field in the
% IP header, the protocol etc. \textbf{The Resource Reservation Protocol (RSVP)
% can give each individual QoS requests for each flow ????}, since the IP
% switch supports RSVP. \textbf{A port pair flow type ???} is defined for
% traffic between same source and destination port between same source
% and destination IP address. It allows differentiating QoS along the
% flows between the same pair of hosts. Simple flow-based firewall
% security features can also be supported.

% Depending on the classification, the switch decides to forward or switch the next packets of that flow. Usually the controller would decide to forward short term flows like database queries, DNS messages and switch long term flows like ftp or telnet data. Flow classification takes care of classifying only long duration traffic because IP switching performs its best for such traffic. Other traffic is forwarded packet by packet~\cite{b61}.


% \subsection{Tag Switching}

% Tag switching technology forwards packets based on tags. The tag is a short, fixed length identifier that is assigned to packets belonging to a certain stream. Each packet gets a tag with an index pointer, which has information about the best route for the data stream. The pointer is used with the routing table to find the exact route. The packets will be forwarded by the switch to the next switch where the same procedure will be repeated. The tag switch forwards the packet based on the tag and does not look at the network layer header.

% A Tag switching network consists of tag edge routers, tag switches, and tag distribution protocol. Tag edge routers are located at the edge of the network. Tag switches switch tagged packets based on the tags. Tag distribution protocol or extensions to existing routing protocols operate so that the tag information may be distributed in the network.

% Tag switching is positioned to support multiple protocols, and to facilitate explicit routing and service differentiation. A tag could be bound to an individual application flow, a single route, group of routes or multicast tree~\cite{rfc2105}.


\section{Management Information Modeling Technologies}
\label{sec:modeling}

This section gives a brief summary of markup languages and
object-oriented models (CIM and DEN) that were developed to model
management information.


\subsection{Markup languages}

Markup languages (such as SGML\index{SGML} --- Standardized Generalized Markup
Language, HTML\index{HTML} --- HyperText Markup Language, and XML\index{XML} --- eXtensible
Markup Language) are designed to add structure and convey information
about documents and data. In markup languages, the main mechanism for
supplying structural and semantic information is by adding to the
document elements comprising a start tag, optionally some content, and
an end tag. 

SGML does not enforce any particular set of element types. SGML
provides a means for defining new element types. Because of this, SGML
is thought of as a language for defining markup languages. XML is
similar in concept to HTML (see page~\pageref{html}). Whereas HTML is
used to convey graphical information about a document, XML is used to
represent structured data in a document. HTML is an SGML application
targeted at display markup for documents, XML is a subset of SGML
targeted at data representation. It is possible therefore to imagine
the Web as consisting of HTML for display purposes, and XML for data
representation and description purposes~\cite{b62}.


\subsection{Object-Oriented Models}
\label{sub:cim}

Distributed Management Task Force Inc (DMTF)\index{DMTF} has developed the
\textbf{Common Information Model (CIM)\index{CIM}}. CIM is used to model
management information for desktop and server systems. It is also
used to describe management information between different management
applications, such as HP Open View, Microsoft SMS, and Tivoli
Management Software, in order to provide common understanding of
management information. 

CIM is an object-oriented conceptual model. It provides a framework, including representation of products, systems, applications, and components that can be managed. It unifies the information coming from many numbers of sources. CIM is not bounded to any particular implementation. It can be implemented as a relational database, as an object database, or as an object/relational database. This allows for the interchange of management information between management systems and applications.

At the present time, there are no CIM based implementations
available. No programming interfaces or protocols are defined by the
CIM document, and hence it does not provide an exchange mechanism. CIM
does not define a common set of APIs (Application Programming Interface)\index{API!CIM}
that software developers can use to make Web management applications
work together. Nor does it specify how the database of gathered
information should be structured. CIM makes also no mention of the
communications protocol that should be used for moving all that
information around. So it is difficult for vendors to develop software
that can integrate data gathered by third-party
applications~\cite{b59}. 

Version 1.0 of the DMTF's CIM XML\index{XML} encoding specification was announced
in 1998. %Allowing CIM information to be represented in the form of
%XML, brings the benefits of XML and its related technologies to
%management information modeled using the CIM Meta model~\cite{b58}. 

The \textbf{Directory Enabled Network (DEN)}\index{DEN} specification provides a schema and informational model for representing network elements and services in a directory. The primary purpose of DEN is to separate the specification and representation of network elements, and services from implementation details.

In a directory enabled network user profiles, applications, and network services are integrated through a common information model that stores network state and exposes network information. This information enables bandwidth utilization to be optimized, it enables policy-based management, and it provides a single point of administration of all network resources.

The philosophy of network management is shown in figure~\ref{fig:directory}. Network management protocols (SNMP, CMIP, RMON\index{RMON}) are used to talk to the network elements. The network schema extensions for the directory service are used to talk about network elements.

\begin{figure}[htb]
\begin{center}
\epsfxsize.8\textwidth
\epsfbox{kuvat/directory}
\caption{Directory service and network management~\cite{b11}}
\label{fig:directory}
\end{center}
\end{figure}

The integration of the network infrastructure with the directory
service allows the applications and users to discover the existence of
devices and relationships by querying the directory service. This is
more scalable and manageable than contacting the individual devices
and aggregating the results. Exposing network elements in the
directory enhances their manageability and usability while reducing
the load on the network. The end user and administrator experiences are
enhanced because there is a single authoritative place to obtain the
information of interest. One example of how the network wide data might
be used is to set up and tear down a certain level of QoS at a given
time for a specified user across many network resources.


\section{Examples of Content Management}
\label{sec:examples_of_content_management}

In the relation of information provider and end-user the core benefit
of content management can be described: ``information is managed so the
right people receive the right information at the right
time''~\cite{d1}. With today's information glut, the value of
information increases, when the content is managed in such a way to
apply the stored information to the right people in an efficient
way. The benefit can be ensured in many ways. The next examples will
describe some of these different ways and they also reflect how widely
content management is understood by different people. First, this
section will deal with the examples where the end-user is the right
person, and secondly the benefits of content management for the
information provider.


\subsection{Multimedia Content Management}
\label{subsec:multimedia_content_management}

The purpose of a multimedia content management system is to control
the flow of content during the creation and delivery of any multimedia
service offering. The content must be managed throughout its entire
lifetime, from initial conception and creation, to integration in an
application, and delivery to the user, as well as the eventual
archival or destruction. This entails managing content across a number
of different organizations and over an extended time period. Practical
experience of the benefits of providing extensive content management
systems has come for example in the areas of interactive television,
web services, multimedia kiosks and video streaming to the corporate
desktop~\cite{b63}.


\subsection{Content Management and the End-user}
\label{subsec:content_management_and_the_end-user}

End-users will not continue to use a service, let alone pay for it, just because it has the best technology. They are usually more concerned with the content of the service~\cite{b63}.
\begin{itemize}

\item \textbf{Content personalization service}

A multimedia service can be significantly enhanced if it is able to
pre-empt the need of each user, automatically supplying the information
the user wants without prompting, tailored to the user's current
environment. This kind of service can be called personalization
service. Personalization and adaptation of information systems to
personal needs and personal interests become more and more
important. The trend to offer a user the most suitable and narrowed
down multimedia information can be seen in research prototypes from
different research areas, e.g.\ an adaptive tutorial agent, adaptive
textbooks on the WWW, personalized newspaper, personalized news
delivery etc.~\cite{d3}. 

The different requirements of each user create a problem for authors
and distributors of information. Typically, the author must either
limit the types of user and client technology that can access the
information, or else create significantly different versions of the
information, each targeted to a particular user group. For instance
the authors of a simple Web page need to remember that the page should
be viewable by a wide variety of clients, including web-tvs, personal
organizers and advanced mobile phones. The wireless application
protocol (WAP)\index{WAP} provides a service for wireless mobile terminals by
automatically adjusting Web pages for presentation~\cite{b63}. Also,
the end-user has the possibility to view the same content via
different delivery channels. For instance, it is possible to view a
film via terrestrial analogue, satellite analogue, cable analogue and
pre-recorded VCR tapes and DVD, soon via digital terrestrial, digital
satellite and digital cable. This range of distribution channels can
actually confuse the viewer (the user of the content). Therefore one
objective is simplifying the situation for the user~\cite{b51}. 
% The integration
%of uses of new digital delivery methods together --- for instance the
%centre of all digital boxes could be the same in the future --- with a
%degree of specialization and cross-referencing would be
%beneficial

\item \textbf{Content validation service}

Content validation service is the task of ensuring that the media
content of the service is correct. Content validation can be broken
into four task categories. Syntactic validation is the process of
ensuring that the media content is technically correct without
reference to its actual value. Syntactic validation will ensure that
the media is in the correct format and playable by the system expected
to receive it. Semantic validation is the process of determining if
the content matter is correct in its current use context and whether
it can safely be passed to the next stage of the media production
process. Semantic validation is the core of any useful validation
system. Once a piece of content has been validated, the details of the
validation check and its result should be added to the metadata
information associated with the content. The information can then be
used by future validation services to increase the speed and accuracy
of the service. Finally, in order for a validation service to be
effective, the information on which a validation result is based must
be completely trustworthy. Therefore, it is vital that automatic
services for the encryption and digital signing of all content
packages is provided as part of any validation service. The inclusion
of digital watermarking can also be included under this
task~\cite{b63}.

%Personalization and adaptation of information systems to personal
%needs and personal interests become more and more important. The trend
%to offer a user the most suitable and narrowed down multimedia
%information can be seen in research prototypes from different research
%areas, e.g. an adaptive tutorial agent, adaptive textbooks on the WWW,
%personalized newspaper, personalized news delivery etc.~\cite{d3}.

\item \textbf{Filtering programs}

Filtering programs are a part of the semantic validation process. There
is a lot of inconvenient content in the web. What is
inconvenient depends on the end-user, are they children surfing in the
web or company's employees working at the business hours. There are
two types of filtering software --- client based software filtering and
server based software filtering.

The client filtering software programs are individual programs. At the
moment there are programs that go by names like Surf Watch, Cyber
Patrol, Net Nanny and Cyber Sitter in the market. These are mainly
meant to filter the unsuitable content to young audience. In general,
these programs come with a pre-determined list of inappropriate sites
with the option to subscribe to the updated list of sites. Some of
these programs also have controls that can be set to be tighter or
looser at filtering based on certain words and phrases. However,
without updating and continued monitoring, this type of software
becomes less effective over time as additional inappropriate sites are
placed online. The software works by blocking the unsuitable content
from the user~\cite{d5}.

There are not so many server based filtering software solutions
available. One of the more popular server filtering program is I-Gear
by URLabs. The server approach involves a main computer, usually
designated for Internet only applications. The server is the main
gateway between the local network and the Internet. As the gateway,
the server is able to function as a web host, an e-mail host and a
filtering interface to all of the computers on the local network. By
having a server controlling all Internet features of a connection,
there are many more options available for management of the content
available on the Internet. Server software has the capability to
control what computers on the network can access from the Internet and
at what times, as well as the ability to cache Web pages
requested. Server filtering software has the capability to regulate
access by requiring the user to have a log-in account. An example of
how I-Gear works: when a Web page from the Internet is requested, the
List Agent compares the URL with a list stored in the I-Gear subject
categories, then the URL is either denied or allowed. Next, the DDR\index{DDR}
(Dynamic Document Review) Agent reviews each page of web traffic
looking for unconditionally vulgar words and replaces them with
``-~-~-~-''. The Local DDR Agent also reviews the documents for any
words that have been added to the category list based on local
community standards or determined inappropriate for the
setting. Finally, the Post Agent views words posted to the Internet
and searches for items that have been rated unconditionally
vulgar. Based on the criteria set, the agent either allows the
requested Web page to be displayed in the browser or the user views a
message indicating the reason that the requested page will not be
displayed~\cite{d5}. This kind of software works well for the
protection of children at homes and at schools. URLabs I-Gear for
FireWall-1 is a content management solution for organizations
concerned about providing Internet access for their employees. It
enables organizations to ensure that the Internet usage is focused on
business during core hours and permits the option of open, unmonitored
access after hours~\cite{d6}.

\end{itemize}

\subsection{Potential Application Value of the Internet}

The Internet population is already big and growing fast. The question
is how can the potential value of the Internet be well employed? What
is the potential value of e-distribution? First of all, techniques
that facilitate easy and quick browsing, retrieval, manipulation and
secure access, transaction and purchasing of multimedia content
through Internet are needed~\cite{d7}.

``EMusicOnline'' is a music purchasing scenario illustrating the
potential capability and advantages of on-line information
representation, retrieval, browsing, transaction and purchasing.  A
corresponding scenario for video renting is ``EVideoOnline''. Instead
of going to the store, music can be purchased by logging into
EmusicOnline. It is possible to search for new songs and listen to a
sample of each song before the decision of buying it. It is also
possible to buy just certain songs instead of an entire CD. No one has
to worry about the songs being sold out. The distribution takes place
by downloading the file. With EvideoOnline the renting starts by
logging into EVideoOnline and specifying the preferred movies. As
search results the service presents a list of movie titles alone with
a short description. It is possible to see the story board, a list of
key frames and a short presentation video on the chosen video. Renting
is charged with credit card, the rent-per-view fee. Distribution takes
place again by downloading the file. For these kind of services, there
are still technical challenges to be solved~\cite{d7}.


\subsection{Benefits of Content Management to the Content Provider}
\label{subsec:the_benefits_of_content_management_to_the_content_provider}

The Banta Corp. and Glyphica~\cite{d8,d9} claim that managing
the content creates lower costs in production and in distribution of
the content. It also enables the use of new channels of distribution
like the Internet, laser disc, DVD and VoD. Accessing the content is
also easier. Content management also enables better protection of
content by automatically managing intellectual property
rights. Personalizing the content for target audiences and individual
end-user gives the possibility for the company to gain greater
profits. As the company has better control over the information
provided, they also have better control over the company image on the
global market.

Content providers have also realized that they can generate significant profits by reusing, re-expressing, or re-purposing old content. For example, newspapers can be published also on the Internet and TV and motion pictures can be published in a digital TV with digital special effects added. For this reason, media and entertainment companies are seeing that effective management of their old and new content will allow them to maximize their profits~\cite{d10}.
\begin{itemize}

\item{Web Site Administration}

While creating HTML pages is getting more and more simple, the
administration of a web site is still a time consuming and a demanding
task. Available tools for web content management only cover some of
the relevant aspects of the whole task --- an integrated, fully
functional solution is still missing. Web administrators still have to
cope with many problems, such as ensuring validity of documents for
instance management of document availability and expiration, or
avoiding invalid links. Other current problems concern the maintenance
of document validity --- as soon as the document gets outdated, it
should be removed in order to avoid waste of resources and to
guarantee topicality. Besides a topic index many Web sites maintain a
search engine helping to find local documents. Nevertheless, documents
of interest may not be found because index data is gathered and
updated only periodically and documents can exclusively be reached via
hyperlinks. Keeping index data topical is a general problem to be
solved. On corporate Web sites, a homogeneous page layout is wanted to
establish corporate identity. Therefore, templates or style files have
been used to create new documents. Nevertheless, due to the
multiplicity of information providers and daily changing Web site
content, it is rather difficult to observe compliance with internal
style guides. It is obvious that Web site administration is a very
demanding task~\cite{d11}. The present content management systems
available can though ensure that the site can handle the explosive
growth of information, it also allows people to make simple changes
without being concerned that a major modification could negatively
affect the whole site accidentally~\cite{d12}. For example iWebDB ---
Web Site Administration based on Object-Relational Database Technology
--- is an integrated database for Web content management, designed to
meet the requirements of Web site administrators~\cite{d11}.

Companies also feel the need to personalize their Web sites. When
asked what are the biggest obstacles they face with Web site
personalization, almost a half of the companies felt that it was
understanding what content to deliver according to a
survey by Wilde~\cite{d13}. Between 10 to 20 percent of the companies felt that
not enough resources, getting the technology to work, analyzing the
data, keeping content fresh or internal organizational challenge was
the biggest problem. Also, making personalization easy for users,
integrating legacy systems and showing personalizations's value to
users caused some problems~\cite{d13}.
\end{itemize}

\subsection{Case: Content Management in a Studio}

IBM Research has studied HDTV broadcast technology.  Within this
project, a content management system for a TV studio has been
developed.  The rest of this section is a quote from~\cite{d14}.

Managing content in a studio involves a number of critical issues
including copyright protection and content re-purposing. The system
must be scalable, provide high availability, ensure the un-compromised
integrity of content, limit access to only authorized users and enable
the quick retrieval of archived material.

\begin{figure}[htb]
\begin{center}
\epsfxsize.8\textwidth
\epsfbox{kuvat/ibm}
\caption{Content management in a studio~\cite{d14}}
\label{fig:ibm}
\end{center}
\end{figure}

The architecture of such a content management system is illustrated in
figure~\ref{fig:ibm}. The heart of the system is a library server (or
content manager), which maintains the directories and metadata for the
content stored on the media servers. The media servers store and
stream the content to clients in a real-time fashion. In addition they
are responsible for storing and maintaining the time-invariant
metadata of their own content. This includes playout information such
as shot and frame indexing. An annotation station is provided for
logging (ingesting) new content into the system. As new content is
ingested, the annotation station will create metadata that can later
be used to perform searches on the content. It stores the metadata on
the library server and, simultaneously, the content itself is stored
on one of the media servers. Once ingested, the browse station is able
to search, browse and retrieve content stored anywhere in the
studio. This content includes video, audio, text, data, graphics,
animation, and images.

The library server is the single centralized store of metadata for all
content in the studio. Although it is a single logical entity, it can
be instantiated as a cluster of machines to achieve high availability
and support large amounts of content. Alternatively, in smaller
studios, the library server, media servers and even the SRM\index{SRM} (Scalable
Reliable Multicast) can be implemented on a single machine. The
metadata in the library server includes time-invariant and
time-variant metadata, among which are shot length and visual
motion. Content in the studio will be identified by a single key which
will be unique within the studio and, in some cases, industry-wide
(such as an extended-ISCI or a SMPTE 298M Universal Media
Identifier).

The annotation station permits manual annotation and performs
automatic annotation for incoming content. As video is ingested, it
will perform an automatic annotation that includes shot-boundary
detection, face detection, and keyframes selection. The logger may
also manually enter bibliographic data, a description of the program,
and other metadata. This may include copyright and access information
for each clip.


