ADOBE FLASH MEDIA SERVER 3.

5 Configuration and Administration Guide
® ®

Last updated 3/2/2010

© 2009 Adobe Systems Incorporated. All rights reserved.
Copyright

Adobe® Flash® Media Server 3.5 Configuration and Administration Guide If this guide is distributed with software that includes an end user agreement, this guide, as well as the software described in it, is furnished under license and may be used or copied only in accordance with the terms of such license. Except as permitted by any such license, no part of this guide may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of Adobe Systems Incorporated. Please note that the content in this guide is protected under copyright law even if it is not distributed with software that includes an end user license agreement. The content of this guide is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Adobe Systems Incorporated. Adobe Systems Incorporated assumes no responsibility or liability for any errors or inaccuracies that may appear in the informational content contained in this guide. Please remember that existing artwork or images that you may want to include in your project may be protected under copyright law. The unauthorized incorporation of such material into your new work could be a violation of the rights of the copyright owner. Please be sure to obtain any permission required from the copyright owner. Any references to company names in sample templates are for demonstration purposes only and are not intended to refer to any actual organization. Adobe, the Adobe logo, Adobe AIR, ActionScript, and Flash are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Red Hat is a trademark or registered trademark of Red Hat, Inc. in the United States and other countries. UNIX is a registered trademark of The Open Group in the US and other countries. Windows is either a registered trademark or a trademark of Microsoft Corporation in the United States and/or other countries. Mac, Macintosh, and Mac OS are trademarks of Apple Inc., registered in the United States and other countries. All other trademarks are the property of their respective owners. This work is licensed under the Creative Commons Attribution Non-Commercial 3.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/3.0/us/ Portions include software under the following terms: Sorenson Spark™ video compression and decompression technology licensed from Sorenson Media, Inc. Speech compression and decompression technology licensed from Nellymoser, Inc. (www.nellymoser.com) Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA. Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.

Last updated 3/2/2010

iii

Contents
Chapter 1: Deploying the server Deploying servers in a cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Deploying edge servers ................................................................................................ 1

Chapter 2: Configuring the server Provisioning the server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Working with configuration files Configuring performance features Configuring security features Configuring content storage ....................................................................................... 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Performing general configuration tasks Configuring Apache HTTP Server

Chapter 3: Using the Administration Console Connecting to the Administration Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Inspecting applications Manage administrators Managing the server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Chapter 4: Monitoring and Managing Log Files Working with log files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Access logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Application logs Diagnostic logs

Chapter 5: Administering the server Start and stop the server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Checking server status Checking video files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Clearing the edge server cache Managing the server on Linux

Chapter 6: Using the Administration API Working with the Administration API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Chapter 7: XML configuration files reference Adaptor.xml file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Application.xml file Logger.xml file Server.xml file Users.xml file Vhost.xml file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE iv
Contents

Chapter 8: Diagnostic Log Messages Message IDs in diagnostic logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

which eliminates single points of failure. The load balancer checks the cookie and sends requests with this cookie to the same server. use lowercase names for all folders and applications. By default. then for HTTP tunnelling to work.com/go/learn_fms_scalable_en Deploying edge servers Workflow for deploying edge servers Note: Flash Media Streaming Server cannot be configured as an edge server. You can deploy any version of the server (Flash Media Interactive Server. Ensure that you deploy all servers on computers that meet the minimum system requirements. cookies are currently supported only on Adobe® Flash® Player 9. Clustering multiple servers behind a load balancer Add all the servers in the cluster to the pool (server farm) in the load balancer. The load balancer distributes traffic among all the servers in the pool.Last updated 3/2/2010 1 Chapter 1: Deploying the server Deploying servers in a cluster Workflow for deploying servers in a cluster You can deploy multiple servers behind a load balancer to distribute the client load over multiple servers. For more information. Deploying multiple servers enables you to scale an application for more clients and creates redundancy.adobe.com/go/learn_fms_clustering_en • www. To run the server as an edge server.28 or later in Windows only. or Flash Media Streaming Server) in a cluster.xml configuration file in the Adaptor/HTTPTunnel/SetCookie element. you must configure an XML file.0. . Configure the load balancer to distribute the load in round-robin mode and to monitor over TCP port 1935. Typically you would run Flash Media Interactive Server as an origin server on one computer and run Flash Media Interactive Server as an edge server on another computer.adobe. you should enable cookies when you deploy servers behind a load balancer.adobe. If the server does not have an externally visible IP address. Note: For cross-platform compatibility. Cookies can be enabled in the load balancer or in the Adaptor. 1 Install Adobe® Flash® Media Server and verify the installation on each computer. see the following articles: • www. Note: For tunnelling connections. 2 Configure a load balancer to see the servers hosting Flash Media Interactive Server or Flash Media Streaming Server. Flash Media Development Server. the server runs as an origin server.com/go/learn_fms_redundancy_en • www.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 2
Deploying the server

It is also possible to run one server in hybrid mode—that is, to configure some virtual hosts to run as edge servers and other virtual hosts to run as origin servers. This scenario is good for development but not for production.
1. Install Flash Media Interactive Server and verify the installation on each computer.

Deploy all edge and origin servers on computers that meet the minimum system requirements. For information about installing and verifying installation, see the Installation Guide. Note: For cross-platform compatibility, use lowercase names for all folders and applications.
2. Configure an edge server and restart.

On the edge server, edit the Vhost.xml file of the virtual host you want to run as an edge server.
3. Verify that the edge server can communicate with the origin server.

The easiest way to verify is to create an explicit connection. Create a SWF file with an explicit connection to the edge server and run the vod or live service.
4. If you’re installing multiple edge servers, copy the Vhost.xml file to the same directory on each edge server. 5. Verify that each edge server can communicate with the origin server. 6. Place the origin server and those edge servers nearest to it on the same subnet. 7. If you’re deploying more than one edge server, configure a load balancer.

Place the load balancer between the clients and the edges. Configure the load balancer to access the pool of edge servers in round-robin mode and to monitor over TCP port 1935. Use the virtual IP (VIP) address of the pool as the IP address in the RouteEntry element of each edge server’s Vhost.xml file. For detailed information on how to configure the RouteEntry element, see the comments in the RouteEntry element of the default Vhost.xml file, or see RouteEntry.

Configure edge servers
To configure the server to run as an edge server, edit the Vhost.xml configuration file of the virtual host you want to run as an edge server. The Vhost.xml file defines how the edge server connects clients to the origin server. Note: You can also configure some virtual hosts to run applications locally (as origins), while others run applications remotely (as edges); this is called mixed mode or hybrid mode. Configure a virtual host to run as an edge server 1 Open the Vhost.xml file of the virtual host you want to configure and locate the following code (comments have been removed):

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 3
Deploying the server

<VirtualHost> ... <Proxy> <Mode>local</Mode> <Anonymous>false</Anonymous> <CacheDir enabled="false" useAppName="true"></CacheDir> <LocalAddress></LocalAddress> <RouteTable protocol=""> <RouteEntry></RouteEntry> </RouteTable> <EdgeAutoDiscovery> <Enabled>false</Enabled> <AllowOverride>true</AllowOverride> <WaitTime>1000</WaitTime> </EdgeAutoDiscovery> </Proxy> </VirtualHost>

Note: The default VHost.xml file is located in the RootInstall/conf/_defaultRoot_/_defaultVHost_ directory.
2 Edit the following XML elements, as needed.
Element
Mode

Required/optional Required

Description Enter local to configure the server to run as an origin server. Enter remote to configure the server to run as an edge server. A Boolean value specifying whether the edge server connection is implicit (true) or explicit (false). The default value is false. Enables or disables the caching of streams to disk, in addition to caching in memory, on an edge server and allows you to specify the cache location. There are two attributes: enabled and appname. To enable caching, set the enabled attribute to "true". When enabled, the server places streams in the RootInstall/cache/appName directory by default. Use the useAppName attribute to specify whether to use the application name as the name of the cache for the application. Vod applications get significant performance gains when caching is enabled.

Anonymous

Optional

CacheDir

Optional

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 4
Deploying the server

Element
LocalAddress

Required/optional Optional

Description Specifies the local IP address to which to bind a proxy's outgoing connection (the proxy’s loopback address). This element allows the administrator to control network traffic by isolating incoming and outgoing traffic to separate network interfaces. Specifies, in each RouteEntry element, how to route connections from the origin to the edge. There is one attribute, protocol, that indicates the protocol of the outgoing connection. Set this attribute to either "rtmp" or "rtmps". To override the RouteTable protocol for a specific RouteEntry element, add a protocol attribute to the RouteEntry element you want to change. Each RouteEntry element maps a host/port pair to a different host/port pair. In the following example, connections to host1:port1 are routed to host2:port2:
host1:port1;host2:port2

RouteTable

Optional; create a routing table when it is not necessary or desirable for application developers to see the origin server URL or when you want to use implicit connections. Optional

RouteEntry

Typically, host1:port1 is your edge server and host2:port2 is your origin server. The following example routes connections destined for host "edge" on port 1935 to host "origin" on port 80:
<RouteEntry>edge:1935;origin:80</RouteEntry>

You can specify a wildcard character (*) for any host or port. The following example routes connections destined for any host on any port to host "origin" on port 1935:
<RouteEntry>*:*;origin:1935</RouteEntry>

You can also specify a wildcard for the host/port to which connections are being routed. The following example routes connections destined for any host on any port to the same host on port 80:
<RouteEntry>*:*;*:80</RouteEntry>

To reject connections, you can specify that a host/port combination be routed to null:
<RouteEntry>edge:80;null</RouteEntry>

The RouteEntry element has a protocol attribute. This attribute overrides the RouteTable protocol for a specific RouteEntry element. For example, RouteTable may have one RouteEntry element that specifies an encrypted outgoing RTMPS connection and another RouteEntry tag that specifies the regular RTMP connection. If a protocol is not specified, the outgoing connection uses the same protocol as the incoming connection.

3 Validate the XML and save the Vhost.xml file. 4 Restart the server.

More Help topics
“Adaptors and virtual hosts” on page 6

Connect to an edge server
There are two types of edge server connections: explicit and implicit (also called anonymous).

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 5
Deploying the server

An explicit edge server prefixes its address to the origin server’s URL in the client NetConnection.connect() call. For example, for applications running on fms.foo.com, instead of clients connecting to an application with a connection string such as rtmp://fms.foo.com/app/inst, clients are directed through the edge, which prefixes its protocol and hostname to the origin URL, as in the following:
rtmp://fmsedge.foo.com/?rtmp://fms.foo.com/app/inst

An implicit edge server does not change or modify the origin server’s URL in the client NetConnection.connect() call. The identity (the IP address and port number) of the implicit edge is hidden from the application developer. Create an explicit connection ❖ Use the following syntax in a client-side NetConnection.connect() call to make an explicit connection to an edge server:
rtmp://edge/?rtmp://origin/app

A question mark (?) separates the edge’s prefix from the main URL. The prefix contains only the protocol, hostname, and optionally the port number. The prefix must always end with a trailing slash. Create an implicit connection 1 In the Vhost.xml configuration file, set the Proxy/Anonymous element to true. Note: Restart the server after changing the Vhost.xml file.
2 In the Vhost.xml file, create a routing table in the RouteTable element; for more information, see the comments

about RouteEntry tags in the Vhost.xml file installed with Flash Media Server.
3 Use the following syntax in a client-side NetConnection.connect() call to make an implicit connection to an

edge server:
rtmp://edge/app/appinstance

Connect edge servers in a chain ❖ You can chain together any number of edges when you make connections to the origin server. Use the following syntax to chain two explicit edges to direct connection requests to the origin server:
rtmp://edge1/?rtmp://edge2/?rtmp://origin/app/inst

As the connection moves through each edge in the chain, the server consumes the first token in the string. For example, after making the connection to edge1, the connection string changes to:
rtmp://edge2/?rtmp://origin/app/inst

Note: You can specify the RTMPT protocol only for the edges, not for the origin. When you use URL decoration to chain edges, Flash Player 7 and earlier versions may have problems with shared objects because of the embedded question mark (?) character in the URL. Call the following function to encode or escape the question marks from the URL before passing the URL to the shared object:
function escapeURI(uri) { index = uri.indexOf('?'); if (index == -1) return uri; prefix = uri.substring(0, index); uri = uri.substring(index); return prefix += escape(uri); }

which enables you to use one file to configure the server. Provisioning allows multiple administrators to configure their own sections on one server.Last updated 3/2/2010 6 Chapter 2: Configuring the server Provisioning the server Adaptors and virtual hosts Provisioning a server divides the server into separate sections. depending on your needs. Each application has one or more instances. If you’re hosting multiple websites on a server. adaptor.test.com on the same server. adaptor.xml. Note: For information about registering applications with the server and storing media. use virtual hosts to give customers their own root folders. This is called running the server in hybrid mode. You can also configure one virtual host to run as an edge server and one to run as an origin server. The server is divided into hierarchical levels: server. and application. For example. Adaptor.xml Vhost. Vhost. and application instances—has distinct configuration settings stored in XML files in the RootInstall/conf directory: Server. and Application. For this reason. You can add adaptors and virtual hosts to organize the server for hosting multiple applications and sites.xml. Each adaptor contains one or more virtual hosts.xml Default structure of the server’s configuration (conf) directory . virtual host (also called vhost). you could use two virtual hosts to host www. If you use your server for hosting.example.xml Users.xml Logger. Each virtual host hosts one or more applications. virtual host. You can provision Flash Media Server in several ways. application. Configuration folder structure Each of these levels—server. The most important configuration parameters have been pulled out to the fms.ini _defaultRoot_ Adaptor.xml _defaultVHost_ Application. if a virtual host needs its own IP address to configure SSL.xml fms.xml and Logger.xml. see “Configuring content storage” on page 33. use adaptors to organize virtual hosts by IP address or port number. You can assign an IP address or a port number to an adaptor. but not to a virtual host.xml.com and www. assign it to its own adaptor. The server is at the top level and contains one or more adaptors. There are also configuration files for information about administrators and logging: Users. you can provision it so that each customer has their own section.xml. For example. conf Server.ini file.

xml file in its root directory. create or paste a copy of the _defaultVHost_ directory and an Adaptor.5 CONFIGURATION AND ADMINISTRATION GUIDE 7 Configuring the server Edit any of these XML files in a text or XML editor and restart the server for the changes to take effect. The server must have a Server.xx:1935</HostPort> <HostPort name="edge2" ctl_channel=":19351">yy. For information about logging in to the Administration Console.xml file. • The server has one initialization file.ini. 4 In the Adaptor. 6 To log in to the Administration Console on the new adaptor. You cannot remove or modify the name of this directory.yy.yy:1935</HostPort> 5 Restart the server. for example.xml file in the conf directory.xml file and a Vhost.xml file. For more information about registered application directories. . as in the following example: <HostPort name="edge1" ctl_channel=":19350">xx. In addition. If an IP address is not specified. You cannot remove or modify the name of this directory. use the syntax adaptorname/username in the Username box. The control channel (ctl_channel) attribute and the HostPort value specify the ports to which an IP address should bind.xml file in the adaptor directory. 3 In the _defaultVHost_ directory. Add an adaptor 1 Create a new directory with the name of the adaptor in the RootInstall/conf folder. This file contains commonly used settings.xml file. • The default adaptor’s root directory is RootInstall/conf/_defaultRoot_. You cannot remove or modify the name of this directory.xx. for example. create or paste a copy of an Application. the adaptor can listen on all available interfaces. see “Connecting to the Administration Console” on page 40.xml file that contains information about administrators of that virtual host.xml file. If you modify Users. Each virtual host must have a Vhost. Each adaptor directory must contain a _defaultVHost_ directory and an Adaptor. you also must restart Flash Media Administration Server. the control channels of two adaptors must be different.xml file.xml file that serves as a default to all applications in that virtual host and a Users. Ensure that the control channels on which separate adaptors listen are different from each other. including the administrator user name and password and the settings you chose during installation. RootInstall/conf/adaptor2. in the RootInstall/conf directory. For more information. fms.xml or fms. Each adaptor must have a default virtual host.yy.xml file in its root directory. Each adaptor must have an Adaptor. multiple adaptors can listen on port 1935. or they cannot interoperate. see “Working with configuration files” on page 9. • You may place an Application. • The default virtual host’s root directory is RootInstall/conf/_defaultRoot_/_defaultVHost_. adaptor2/admin. If a host has multiple IP addresses. and a Users. The server uses the HostPort value to listen for clients—no two adaptors can listen on the same port. The server uses the control channel (ctl_channel) attribute internally to communicate between server processes (adding a HostPort element creates a new FMSEdge process).ini.Last updated 3/2/2010 FLASH MEDIA SERVER 3. add a HostPort element to listen on a new port for this adaptor: <HostPort name="edge2" ctl_channel=":19351">:1936</HostPort> The name attribute must be unique on the server. unless they use different IP addresses. see the Developer Guide. • Virtual host directories may also contain an Application. either internally or externally.xx. 2 In the adaptor2 directory. The following rules define the conf directory structure: • The root configuration folder is RootInstall/conf. a Logger.xml file in an application’s registered directory to create an application-specific configuration.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. 2 Copy an Application.xml Logger. for example: <AppsDir>C:\www.xml file.xml adaptor2 Adaptor.xml Users.example. RootInstall/conf/_defaultRoot_/www.xml Vhost. see “Connecting to the Administration Console” on page 40.xml file. and a Users. www. specify an application directory in the AppsDir element. (The Users.xml fms. 5 Restart the server.ini _defaultRoot_ Adaptor. for example.xml _defaultVHost_ Application.xml file.example. Note: You can call the startVHost() Administration API or log in to the Administration Console without restarting the server. conf Server.) 3 In the Vhost.com. for example. 8 Connect a test application to the new virtual host to make sure it works. but it causes namespace conflicts and is not recommended.xml Users. Administrators are either server-level users (similar to a root user) or virtual host-level users.xml The conf directory with an additional adaptor called adaptor2 Add a virtual host 1 Create a folder with the name of the virtual host in an adaptor folder.com<\AppsDir> Note: It is possible to use the same applications directory for multiple virtual hosts.xml file. in the Server name field.com.xml file to the new virtual host folder. 7 Connect to the new virtual host by specifying the virtual host name.xml _defaultVHost_ Application.xml file.xml Users. For information about logging in to the Administration Console. you are considered a virtual host administrator and don’t have privileges to manage the server or users.xml Vhost.example. a Vhost. 4 Validate the XML and save the Vhost.5 CONFIGURATION AND ADMINISTRATION GUIDE 8 Configuring the server Administrators are defined in the UserList section of the Users. 6 Log in to the Administration Console. . If you log in to an adaptor other than the default adaptor.xml file is required only if you are defining administrators for this virtual host.

If you modify Users.xml Users.xml file.com Overriding values in the Application.xml file You can place an Application. • You can override the LoadOnStartup tag.xml file.xml file. look at the vod and live applications included with Flash Media Server. To see an example. application-specific Application. locations. Working with configuration files Editing configuration files Note: For information about configuration file names. To edit a configuration file. You can also prevent settings in the vhost-level Application. you also must restart Flash Media Administration Server.xml Users.xml www.xml files cannot override that tag’s setting.xml.example. The values in these files override the values in the vhost-level file rootinstall\conf\_defaultRoot_\_defaultVHost_\Application.ini _defaultRoot_ Adaptor. Each folder contains an Application. Add an override attribute to any tag and set it to "no".xml fms.xml.xml settings from being overridden by the applicationlevel Application. • You cannot override the subtags of the LoadOnStartup tag.com Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. as in the following: <LoadOnStartup override="no">false</LoadOnStartup> The following rules apply: • When the override="no". and hierarchy. and restart the server.xml The conf directory with an additional virtual host called www.xml _defaultVHost_ Application.xml Vhost. .5 CONFIGURATION AND ADMINISTRATION GUIDE 9 Configuring the server conf Server. modify and save it. Navigate to rootinstall\applications\vod and rootinstall\applications\live.xml Logger. open it in a text editor.xml Vhost.xml file override the values in the vhost-level Application.xml Users.xml file in an application’s folder. Values set in the application-level Application. see “Configuration folder structure” on page 6.example.

it looks for the fms.5 CONFIGURATION AND ADMINISTRATION GUIDE 10 Configuring the server It’s a good idea to check that the XML is valid after editing an XML configuration file.exe file and the CONF symbol is mapped to the location of the Server.xml file).ini file is evaluated. the server looks for the Symbols tag and processes the child tags in the order in which they appear. The server has two predefined symbols.xml file.xml file in the RootInstall/conf directory. Create a substitution. 3 Enter a new value for the SERVER. this substitution. 2 The fms. 4 Save the file and restart the server.xml file: 1 Create a new XML file and save it in the RootInstall/conf folder as substitution. 3 If the substitution. ROOT and CONF. You can also create additional map files and reference them from the substitution. When the server starts. The installer defines a few mappings during the installation process and stores them in the fms.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 2 Enter the following XML structure: <Root> <Symbols> <SymbolName>StringToMapTo</SymbolName> </Symbols> </Root> Add a SymbolName element for each symbol you want to create. 4 The server processes the additional map files in the order in which they appear (in KeyValueFile elements in the substitution. 2 Save a copy to another location as a backup.xml. future updates are faster: you can edit the map file instead of editing each configuration file. you can use symbols as values for XML elements in configuration files. The ROOT symbol is mapped to the location of the FMSMaster. 3 For example. After you’ve set up a map file.xml file maps the symbol TESTUSERNAME to the value janedoe: <Root> <Symbols> <TESTUSERNAME>janedoe</TESTUSERNAME> </Symbols> </Root> .ini file 1 Open RootInstall/conf/fms.xml file exists. 5 Open the Administration Console and log in with your new password. Edit the fms. Using symbols in configuration files To simplify configuration.xml file.ini file. Create a file named substitution. 5 Symbols defined in external map files are processed in the order in which they appear in each file.ini file and the substitution.xml in the RootInstall/conf folder that maps the symbols to strings that the server substitutes when it reads the configuration files.ADMIN_PASSWORD parameter. that are always available. The server builds the symbol map in the following order: 1 The predefined symbols ROOT and CONF are evaluated.ini in a text editor.

Note: If you change the Users. it would not be surrounded by quotation marks. Creating additional map files You can specify all of your text substitution mappings under the Symbols tag in substitution. Each element can hold the location of one external file.xml file.xml file. The % characters indicate to the server that the symbol refers to an environment variable and not to a user-defined string. where each pair appears on a separate line and takes the following form: symbol=value The following example shows three symbol-value pairs: USER_NAME=foo USER_PSWD = bar HELLO= "world and worlds" Place comments on separate lines that begin with a number sign (#). For example.5 CONFIGURATION AND ADMINISTRATION GUIDE 11 Configuring the server 4 Open the RootInstall/conf/Users. If the symbol were used as a regular value.xml.xml file.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file as follows: <User name="janedoe"> Note: Because this symbol is used as an attribute. use the name of the environment variable within percent (%) characters. For example. To do this. Do not place comments on the same line as a symbol definition. .txt: <Root> <KeyValueFile>C:\testfiles\mySymbols. it is surrounded by quotation marks. but no white space within double quotation marks. 6 Restart the Administration Server. the server maps the following symbol to the COMPUTERNAME variable: ${%COMPUTERNAME%} When you use an environment variable. the following references the file C:\testfiles\mySymbols.ADMIN_USERNAME with the symbol TESTUSERNAME. The syntax for specifying an environment variable as a symbol is ${%ENV_VAR_NAME%}. They simply contain a collection of symbol-value pairs.xml file in a text editor. The first equal sign (=) in a line is considered the delimiter that separates the symbol and the value. you must restart the server. Using environment variables To refer to an environment variable in one of the XML configuration files. If you change any other XML configuration file.ADMIN_USERNAME}"> and replace the symbol SERVER. However. you must restart the Administration Server.txt</KeyValueFile> </Root> These external files are not in XML format. it substitutes the value from the substitution. you can also create additional map files. create one or more KeyValueFile elements in the substitution. When the server reads the XML file. The server trims leading or trailing white space from both the symbol and the value. 5 Locate the line <User name="${SERVER. you don’t have to define it in the substitution.

complete the following tasks: 1 “Configure the recorded media cache” on page 12 2 “Configure the size of stream chunks” on page 13 Configure the recorded media cache When a stream is requested from the server. 2 Edit the SERVER.5 CONFIGURATION AND ADMINISTRATION GUIDE 12 Configuring the server Configuring performance features Configure the server for live video delivery To configure the server to deliver live media. This value shares memory with the running process and has a limit of 2 GB in Windows and 3 GB in Linux. If the segment is not available. If you have cache-full events in the core log file.FLVCACHE_MAXSIZE. While a large cache size is useful.FLVCACHE_MAXSIZE parameter. The size of the cache limits the number of unique streams the server can publish. if there still isn’t enough room for a new segment. Adobe recommends that you ensure that your total system memory usage does not exceed the process limit of your OS.Last updated 3/2/2010 FLASH MEDIA SERVER 3. To increase the probability that a requested stream will be located in the recorded media cache. The default value is 500. starting with the least recently used. For more information about the core log file. the server removes unused segments. and returns a reference to that segment to the stream. the server retrieves the segment from its source. As long as the cache has not reached capacity. see “Monitoring and Managing Log Files” on page 55. Each time a stream attempts to access a segment. the server places segments in the cache. segments of the stream are stored in a cache on the server.ini file. as live streams do not need or utilize the cache. in megabytes. the server checks the cache.FLVCACHE_MAXSIZE. 1 Open the RootInstall/conf/fms. After removing all unused segments. increase the size of the cache or limit the number of streams playing. decrease the value of SERVER. 3 Restart the server. the server gives the stream a reference to the segment for playback. Consider memory limits and desired memory and stream performance when utilizing the memory cache. Note: Cache settings have no effect on live streams. the server notifies the client that the stream is not available and makes an entry in the core log file. inserts it into the cache. If the segment is available. This is the maximum size of the cache. complete the following task: ❖ “Combine audio samples” on page 13 Configure the server for vod delivery To configure the server to deliver recorded media. To decrease the amount of memory the server process uses. . When the cache is full. increase the value of SERVER.

xml file. the more benefit is gained from larger chunk sizes. 4 Validate the XML and save the Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file. set this value to 1. combine audio samples.. 2 Edit the following parameters: • • • • APP. set this value to 1. Send aggregate messages Sending aggregate messages reduces CPU usage and increases server capacity.0 and above. . The default value is 80. For more information. <AggregateMessages enabled="true"></AggregateMessages> <Client> 3 Make sure that the enabled attribute is set to true (the default). see “Application. APP. You can configure applications to deliver aggregate messages to clients running on Flash Player 9. 1 Open the Application. To increase live streaming capacity. audio samples are not combined. 3 Restart the server.. set this value to 1. The default value is 8. APP.0.5 CONFIGURATION AND ADMINISTRATION GUIDE 13 Configuring the server Configure the size of stream chunks Streams break into chunks as they are written to the network. The default value is 60.ini file. large values can delay other content on lower bandwidth connections. 2 In the Client element. audio samples are combined. When this setting is disabled. set this value to 8. the server breaks up aggregate messages into individual messages before delivering them to clients. The larger the content size and the higher the bandwidth of the receiving connection. However. 5 Restart the server.COMBINESAMPLES_MAXSAMPLES: Combine this many samples into one message. set the OutChunkSize element to a value between 128 and 65536 bytes.COMBINESAMPLES_LOCPU: If the CPU is lower than this value.60. The default value is 4096 bytes. Combine audio samples To handle more connections while broadcasting a live stream. Important: Do not combine audio samples if you are also using the live aggregation message feature. 3 Restart the server.xml file” on page 93.xml file. You can specify the size of a chunk. 1 Open the RootInstall/conf/fms. To increase live streaming capacity. audio samples are not combined. The default value is 4. 1 Open the Application. 2 Locate the following XML code: <Client> .COMBINESAMPLES_HICPU: If the CPU is higher than this value. To increase live streaming capacity. Large values reduce CPU usage because there are fewer writes. To increase live streaming capacity.SUBSCRIBERS: If there are more than this number of subscribers to a stream. APP.

g.. The server closes the client connection to the server and writes an x-status code of 432 in the access log. the server sends a status message to the NetConnection object (the client) with the code property set to NetConnection. Listeners are defined in the HostPort element in the Adaptor. The values defined in the Server..xml file.xml. A value of 0 or -1 disables this feature. The values defined in the Application..xml file override the values defined in the Vhost. and Application. you can disable the feature for individual virtual hosts or individual applications in the Vhost. Impact Connections requested at a rate above this value remain in the TCP/IP socket queue and are silently discarded by the operating system whenever the queue becomes too long. such as 12. A client is active when it is sending (e.xml configuration file apply to all clients connected to the server. publishing) or receiving (e.xml file.g. 1 Locate the following code in the Server.xml files and Application. Close idle connections Sometimes users abandon their connections to an application. the server imposes a maximum total combined rate of 30 connections per second.xml values). subscribing to) data. per listener. The value of this element is a global setting for all listeners. 3 Restart the server.5. Once you enable the feature in the Server.xml file (the Vhost. When a client has been idle longer than the maximum idle time (10 minutes.Idle followed by NetConnection.xml files. by default).xml values override the Server.xml file. The server also writes a message such as “Client x has been idle for y seconds” in the core and event logs. <Protocol> <RTMP> <Edge> <MaxConnectionRate>100</MaxConnectionRate> Element MaxConnectionRate Description The maximum number of incoming connections per second the server accepts..Closed.xml configuration file: <Root> <Server> . 2 Validate the XML and save the XML file. If the element is set to 10 connections per second. Enable closing idle connections 1 Locate the following code in the Server. the server can close the idle clients. unless the values are defined in the Vhost.xml.xml file. each listener has a limit of 10 connections per second. To reclaim these resources for new and active clients.Connect.5 CONFIGURATION AND ADMINISTRATION GUIDE 14 Configuring the server Limit connection requests A high connection rate to the server can negatively impact the experience of users already connected to the server. enable the feature in the Server.Last updated 3/2/2010 FLASH MEDIA SERVER 3. You can set a fractional maximum connection rate.Connect.xml file: . Elements in the Server. To close idle connections.xml configuration files specify how often the server should check for idle clients. Each port the server is configured to listen on represents a listener. Vhost. If there are three listeners and the MaxConnectionRate is set to 10.

A shorter interval results in more reliable disconnection times but can also result in decreased server performance. a user might leave the window to idle out. Configure settings for virtual hosts You can disable this feature for a virtual host or specify a different maximum idle time for a virtual host in the Vhost. the feature is disabled. 1 Locate the following code in the Vhost. Impact CheckInterval A client is disconnected the first time the server checks for idle connections if the client has exceeded the MaxIdleTime value. at which the server checks for active client connections. in seconds. even if you specify true in the Vhost.5 CONFIGURATION AND ADMINISTRATION GUIDE 15 Configuring the server <AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> 2 Edit the following elements.xml. before a client is disconnected. When you configure this element.xml file overrides the value of the MaxIdleTime element in the Server. If no value is set for this element. consider the type of applications running on the server.xml file and remove the comments: <VirtualHost> <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> </VirtualHost> 2 Edit the following elements. MaxIdleTime 3 Restart the server. . A low value may cause unneeded disconnections. Specifies the maximum idle time allowed. in seconds. The default idle time is 600 seconds (10 minutes).Last updated 3/2/2010 FLASH MEDIA SERVER 3. the default idle time is used. Element AutoCloseIdleClients Description Set the enable attribute to true to close idle clients.xml file.xml file. You can set a different value for each virtual host. Specifies the interval. MaxIdleTime Specifies the maximum idle time allowed. The default interval is 60 seconds. Element AutoCloseIdleClients Description Disable this feature for an individual virtual host by setting the enable attribute to false. before a client is disconnected. in seconds. If this element is disabled in Server. If this element is 0 or less. The value of the MaxIdleTime element in the Vhost. If the enable attribute is omitted or not set to true. The default value is false. The default idle time is 600 seconds (10 minutes). the server uses the value set in the Server. For example. if you have an application allowing users to watch short video clips.xml.xml file. file. the feature is disabled for all virtual hosts.

exe (Windows) or fmsmaster (Linux).xml file. Settings in an Application.xml file in an application’s folder (for example.xml file. the server uses the value set in the Vhost.xml file.xml file in a virtual host folder (for example. In some scenarios. RootInstall/applications/myApp/Application.xml) apply only to that application. You can set a different value for each application. Do not run more than 100. file. The value of the MaxIdleTime element in the Vhost. When you start the server. even if you specify true in the Application. you are starting a process called FMSMaster. Configure how applications are assigned to server processes Note: This section is only applicable to Flash Media Interactive Server and Flash Media Development Server. you might want to change how applications are assigned to server processes.exe (Windows) and fmscore (Linux). Flash Media Streaming Server doesn’t support multiple processes. Settings in an Application. If no value is set for this element. Application instances run in processes called FMSCore. If you are configuring the number of core processes and using the reloadApp() Administration API or HTTP command.xml configuration file. RootInstall/conf/_defaultRoot_/_defaultVHost_/Application.xml) apply to all the applications running in that virtual host. Specifies the maximum idle time allowed. The master process is a monitor that starts core processes when necessary.5 CONFIGURATION AND ADMINISTRATION GUIDE 16 Configuring the server Configure settings for applications You can disable this feature for an application or specify a different maximum idle time for an application in the Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file.xml. If no value is set for this element in the Vhost. The default idle time is 600 seconds (10 minutes). 1 Locate the following code in the Application. Note: The number of core processes you can run is limited by system memory. the feature is disabled for all applications. in seconds. MaxIdleTime 3 Restart the server. but there can be many core processes running at a time.xml file. before a client is disconnected. Element AutoCloseIdleClients Description Disable this feature for an individual application by setting the enable attribute to false.xml file and remove the comments: <VirtualHost> <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> </VirtualHost> 2 Edit the following elements. The following is the XML structure: . You can configure how applications are assigned to server processes in the Process section of the Application.xml file overrides the value of the MaxIdleTime element in the Server. see Tech Note kb403044. and you probably won’t need more than 20. There can be only one master process running at a time. If this element is disabled in Server.xml. the server uses the value in the Server.

if the value of Scope is adaptor. All instances of a single application run together in a process. Scopes have an enclosing relationship with a strict ordering: adaptors contain virtual hosts. An application instance can run by itself in a process or it can run in a process with other instances. Distribute a process scope among multiple core processes The four process scopes don’t provide a good distribution for all scenarios. the server uses the value immediately lower than the one specified in the Scope tag. . which contain applications. Note: There is no limit to the value of the numprocs attribute. 3 Enter one of the following values for the Distribute element. but you should never need more than 40. By default. You can set the Distribute numprocs attribute to a value greater than 1 to distribute instances across that number of processes. Enter one of the following values for the Scope element. which contain clients. </Application> Configure a process scope ❖ The Scope tag specifies at which level application instances are assigned to core processes. In this scenario. if you have one application and want to run 25 instances of that application. insts. which means that the default behavior is to distribute application instances to three core processes. Running every instance in its own process can create many processes. The default value of numprocs is 3. the value of Distribute can be vhosts. If the value of Scope is app. 1 Set the scope value. a number between 3 and 11 is realistic for most cases.. you could set Scope to app and Distribute numprocs to 3 to distribute the application instances among three core processes. Each application instance runs in its own process. apps. which contain instances. In other words. All application instances in a virtual host run together in a process. Adobe recommends using prime number values because they result in a more even distribution of connections to processes. 2 Set the numprocs value to a value higher than 1. The value of the Distribute tag must be a scope that is lower in order than the value in the Scope tag. Value adaptor vhost app inst Description All application instances in an adaptor run together in a process. you could either distribute those instances to one core process (<Scope>app</Scope>) or three core processes (<Scope>inst</Scope>). the value of Distribute can be insts or clients. Depending on available RAM. This provides the best application isolation and uses the most system resources. or clients.. For example.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 17 Configuring the server <Application> <Process> <Scope>vhost</Scope> <Distribute numprocs="3"></Distribute> <LifeTime> <RollOver></RollOver> <MaxCores></MaxCores> </LifeTime> <MaxFailures>2</MaxFailures> <RecoveryTime>300</RecoveryTime> </Process> . This is the default value.

and so on. The duration of process 1 is partially determined by the current time when process 1 starts. To disable this feature. it accepts new connections until the next process starts: that is.Last updated 3/2/2010 FLASH MEDIA SERVER 3.. Most vod (video on demand) applications are stateless because each client plays content independently of all other clients.. Use this value for stateless applications only. The duration of the first process is determined by the clock time. Process 2 starts D. Chat and gaming applications are not stateless because all clients share the application state. clients Configure the number of core processes and how long each process runs ❖ Specify the number of core processes in the MaxCores tag (the maximum number of core processes that can exist concurrently) and the number of seconds that a core process can run in the RollOver tag. if a shared chat application were set to client. indicating that the maximum number of processes at any given time is 3: <Process> <Scope>app</Scope> <LifeTime> <RollOver>3600</RollOver> <MaxCores>3</MaxCores> </LifeTime> . All instances of an application run together in a process. because rollover values are calibrated to the real clock time. For example. so the duration of process 1 is only 40 minutes (because it is 40 minutes until the beginning of the hour in real time). Each client connection runs in its own process. the messages wouldn't reach everyone in the chat because they’d be split into separate processes. the current time is 12:20. If you choose this value. Process 1 starts C. when process 1 starts.5 CONFIGURATION AND ADMINISTRATION GUIDE 18 Configuring the server Value vhosts apps insts Description All instances of applications in a virtual host run together in a process. Process 1 ends. when process 1 starts. Client connections B. set RollOver to 0. This is the default value. you must also set the Distribute numprocs attribute to a value greater than 1. When a core process reaches the limit. as shown in the diagram. For example. Process 4 starts. Note that the duration of process 1 might or might not be the full duration specified by the rollover value. any new connections roll over to a new core process. Process 3 starts E. A B C D E 12:00 12:20 1:00 2:00 3:00 4:00 5:00 A. . subsequent processes have a duration equal to the specified rollover time. it accepts new client connections to the application until process 2 starts. Each application instance runs in its own process. The following diagram depicts the way in which the server rolls over processes. because the maximum core processes limit was reached When each process starts. This feature is disabled by default. process 2 then accepts new client connections until process 3 starts. the rollover time is set to 3600 seconds (1 hour). indicating that every hour a new process should start. and the maximum core processes value is set to 3. Stateless applications don’t require clients to interact with other clients and don’t have clients accessing live streams. In the XML.

In stateless applications. a master process will not launch a core process until a minimum recovery time elapses.xml file” on page 178. Note: An application is considered stateless if you configure it to distribute clients over multiple processes. To do this. To disable this feature. 1 Open the RootInstall/conf/fms. The default value is all. . Verifying SWF files prevents third parties from creating their own applications that attempt to stream your resources. By default. Enter a value in the RecoveryTime tag to specify the minimum recovery time for contained elements. If a value is set. connections are allowed from all domains. This ensures that an application instance is not split across multiple processes.com domains. Check for process failures 1 Enter a value in the MaxFailures tag to specify the maximum number of process failures allowed before a core process is disabled. This feature is disabled by default. Note: Applications that are loaded using the Administration API (including applications loaded using the Administration Console) are not checked for process failures. you must set an identical RollOver value for each VHost. 3 Restart the server. The default value is 2. but clients are disconnected periodically. VHOST. Configuring security features Restrict which domains can connect to a virtual host If desired. see “Vhost. old core processes continue to serve earlier connections.ALLOW = example. set MaxCores to 0. 2 Once disabled. For example. set the tag to 0 to disable checking for process failures. specify localhost. In this case. 2 Set the VHOST. Use this feature to guard against a behavior in which a faulty core process can use the entire CPU by being repeatedly launched very quickly. you can specify a value in the MaxCores tag to limit the maximum number of core processes that can run simultaneously.ini file.ALLOW parameter to a comma-delimited list of domains that are allowed to connect to the server. To allow localhost connections. set the Distribute numprocs attribute to a value greater than 1. the server ignores any value you assign to MaxCores and sets it to 1.com. then set the Distribute tag to clients or set the Scope tag to inst.com allows connections from the example. For more information. example2. If the application is not stateless.5 CONFIGURATION AND ADMINISTRATION GUIDE 19 Configuring the server Note: If you have multiple VHosts with Process/Scope set to adaptor. Verify SWF files You can configure the server to verify client SWF files before allowing them to connect to an application. only the domains listed are accepted. such as vod applications.com and example2.Last updated 3/2/2010 FLASH MEDIA SERVER 3. you can restrict which domains are allowed to connect to a virtual host.

This tag specifies a location for global SWF files. which means SWF files that are common to all applications. By default. the server looks for verifying SWF files in that file path. Note: SWF files connecting to Flash Media Administration Server cannot be verified. Note: If you’re deploying an Adobe AIR application. When verification is enabled. or in the File plug-in.5\webroot</SWFFolder> prevents you from needing to maintain two copies of each SWF file.xml to the plug-in.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file defines the location of verifying SWF files for all applications on the virtual host. the server looks in RootInstall/applications/application_name/SWFs folder for the verifying SWF file. copy the SWF file you compiled into the AIR package to the server or external content repository. The verifying SWF file is a copy of the client SWF file that you place on the server or in an external content repository. SWF verification is disabled by default. 3 The server checks the SWFFolder tag in the Server. the server verifies that the client SWF file requesting a connection to the server matches the verifying SWF file. Configure the Server. For example.0 or later or Adobe® AIR™. To verify SWF files. • Administrative applications that have access to all server levels.xml file. adding the path <SWFFolder>C:\Program Files\Adobe\Flash Media Server 3. The Application.xml file defines the location of verifying SWF files in the SWFFolder tag.5 CONFIGURATION AND ADMINISTRATION GUIDE 20 Configuring the server Note: Verification of SWF files requires Flash Player 9. the server looks in the default location: /applications/application_name/SWFs.xml file. This feature is supported in versions 3.115. on Windows. the server looks in the default location: /applications/application_name/SWFs. This Application. If a client SWF file fails verification. 2 The Vhost-level Application. If you installed Apache with Flash Media Server. Flash Media Interactive Server.xml file. If SWFFolder is empty. Configure SWF verification for applications 1 Locate the following section of the Application.xml file. If SWFFolder contains a file path.0. you must set <SWFVerification enable = "true"> in the Application. • All applications in a virtual host.xml file and an Application. If the SWF file is verified. Locating SWF files for verification The server looks for verifying SWF files in the following locations. Configure the application-specific Application. you can add a path to the folder from which you serve SWF files. You can override this default in the SWFFolder tag of the Application.xml configuration file. if it exists.xml file. the Server. the server verifies it. The plug-in developer overrides these values with paths to the external content repository. and Flash Media Development Server.xml file: . The SWFFolder tag defines the location. the server calls the File plug-in.xml file in the Vhost folder.xml file.0 and later of Flash Media Streaming Server. The server does not send a NetStream status message to the client. it is allowed to connect to the application. the SWF file that contains the NetConnection object to connect to the server is the one that the server attempts to verify. the server looks for verifying SWF files in that file path. The server passes any values present in Application. the server disconnects the NetConnection object and logs an event to the access log. in order: 1 The application-specific Application. When the client SWF file connects to the server. If SWFFolder contains a file path. You can verify SWF files at the following server scopes: • Individual applications. Configure the Application. For client applications that comprise multiple SWF files or SWF files that dynamically load other SWF files. 4 If a File plug-in is enabled for retrieval of SWF files.xml or Server. If SWFFolder is empty.xml file.

which means that the server scans only one subfolder level. SWFFolder None. verifying SWF files should be placed in the applications/myApplication/SWFs folder. This is a reserved field that works with Flash Player. For example. The default value is 0. The default value is 1.. These SWF files are used to verify connecting SWF files.5\webroot. Specifying zero scans the parent folder and no subfolders. If you installed Apache with Flash Media Server. The parent folder is specified in the SWFFolder element. Adobe recommends keeping the default value. which allows this and all future versions. Specifying a positive value scans that number of subfolder levels. MinGoodVersion None. A single folder or a semicolon-delimited list of folders that contain copies of client SWF files. Element SWFVerification Attribute enabled Description Set the enabled attribute to "true" or "false" to turn this feature on or off. leave this field blank. if there isn’t a value set for this element. For example. The default value is 5 seconds. The default value is the application's folder appended with /SWFs. MaxInitDelay None FirstHashTimeout None FinalHashTimeout None UserAgentExceptions None. The maximum amount of time to process SWF files.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Specifying a negative value scans all subfolder levels. They are the verifying SWF files. The maximum amount of time that a client can use to provide its final verification to the server. enter the path C:\Program Files\Adobe\Flash Media Server 3. If you are using the File plug-in to verify SWF files in an external content repository. for an application called myApplication.. Container.5 CONFIGURATION AND ADMINISTRATION GUIDE 21 Configuring the server <Application> . enter the path to the folder from which you are serving SWF files. Specifies the minimum version of this feature to accept. <SWFVerification enabled="false"> <SWFFolder></SWFFolder> <MinGoodVersion></MinGoodVersion> <DirLevelSWFScan>1</DirLevelSWFScan> <MaxInitDelay>5</MaxInitDelay> <FirstHashTimeout>5</FirstHashTimeout> <FinalHashTimeout>60</FinalHashTimeout> <UserAgentExceptions> <Exception to="" from=""/> </UserAgentExceptions> <Cache> <TTL></TTL> <UpdateInterval></UpdateInterval> </Cache> </SWFVerification> </Application> 2 Edit the following elements. in seconds. The default value is "false". Specifies the number of levels of subfolders within a parent folder to scan for SWF files. DirLevelSWFScan None. if you’re serving SWF files from the webroot directory on Windows. The maximum amount of time that a client can use to provide its first verification to the server. .

to bypass SWF verification.xml file and “Create verification exceptions” later in this topic. Cache TTL None. You can add one or more exceptions to the SWF verification rules that allow specified user agents..5 CONFIGURATION AND ADMINISTRATION GUIDE 22 Configuring the server Element Exception Attribute from to Description A user agent to except from verification. The default value is 1440 minutes (24 hours). . Certain applications—for example. create instance folders in the SWFs directory. See “Configure SWF Verification for Applications” in this topic. applications/myMediaApp/SWFs/chat02. For example. such as Flash Media Live Encoder. as in the following: <SWFVerification enabled="true"> . create a folder called SWFs in the application’s folder on the server. 2 To verify SWF files for application instances. the verification values stay in the cache for 24 hours.xml file. for an application called myMediaApp. create the folder applications/myMediaApp/SWFs. enable verification in the Vhost-level or application-specific Application. UpdateInterval None. For more information. If a SWF file is removed from the server. see the comments in the Application. The time to live for the SWF file. Container. Use the from and to attributes to indicate the lowest and highest versions to except. with editing to make all numeric fields equal in length.xml file Root/Server/SWFVerification/SWFFolder tag. The default value is 5 minutes.0" from="FME/2. ❖ In the Server. applications/myMediaApp/SWFs/chat01. Create folders for the verifying SWF files 1 If the SWFFolder value is the default.xml file. specify folders that hold the verifying SWF files. None. and so on. <UserAgentExceptions> <Exception to="FME/0.xml file. SWF files in the SWFs folder verify connections to any instance of the myMediaApp application. This is a string comparison. You can also configure other values for these SWF files. SWF files in the SWFs directory can verify all instances of the application. users can connect to the application until the cache expires. for example. Note: Multiple SWF files may exist in either directory. which means a SWF file copied to the SWFs folder is picked up by the server within 5 minutes. Adobe® Flash® Media Live Encoder—do not support the form of SWF verification used by the server. SWF files within an instance folder can verify only that instance.5"/> </UserAgentExceptions> </SWFVerification> Configure SWF verification globally You can configure verification for a group of SWF files on the server that are common to all applications.Last updated 3/2/2010 FLASH MEDIA SERVER 3. A SWF file can be renamed and still used for verification as long as it’s a copy of the client SWF file. Note: In addition to configuring the SWFFolder tag in the Server. in minutes. The maximum time in minutes to wait for the server to scan the SWFs folders for updates when there is a miss in the cache. Create verification exceptions ❖ Add Exception elements to the UserAgentExceptions section of the Application..

For example: <Allow>x. <CrossDomainPath></CrossDomainPath> 2 Specify the location of the cross-domain file in the CrossDomainPathElement.Last updated 3/2/2010 FLASH MEDIA SERVER 3. respectively. <Allow>all</Allow> .60</Allow>.com/myMediaApplication").xml file. which can be a security risk. 4 Validate the XML. save the Server. which lets you specify a list of domains from which a client can access the server. save it. a client can connect to Flash Media Administration Server from any domain or IP address.com/crossdomain. you can disable RTMPE at the adaptor level. and full or partial IP addresses.1.xml and locate the following code: <AdminServer> .. for the Administration Server): <Server> . 80 (RTMPTE)..133. Because RTMPE uses encrypted channels. foo..connect() URL. for example: <CrossDomainPath>http://store. If you don’t control the applications that connect to Flash Media Server and you don’t want them to use RTMPE. This is specified as a comma-delimited list of host names.xml file for the adaptor you want to disable (located in RootInstall/conf). 443 (RTMPE).mydomain. Limit access to Flash Media Administration Server By default. applications specify rtmpe or rtmpte. Disable RTMPE By default. In some scenarios.xml and locate the CrossDomainPath element in the Server element (or the AdminServer element.com.. 3 Alternatively. Flash Player scans ports just like it does with RTMP..foo. 10. as well as the keyword all. in the following order: 1935 (RTMPE). If an application specifies RTMPE without explicitly specifying a port.example.com. Note: RTMPE cannot currently be used between servers or from edge to origin. In these cases. in the NetConnection. 1 Open the Adaptor. you can change this in the AdminServer section of the Server. RTMPE is enabled in the server’s Adaptor. To request an encrypted or encrypted tunnelling channel.xml</CrossDomainPath> 3 Validate the Server. 1 Open RootInstall/conf/Server. and restart the server. and restart the server. 10.xml file. 2 Locate the following XML: . 1 Open RootInstall/conf/Server. nc.. edit the CrossDomainPath element to specify a cross-domain file.5 CONFIGURATION AND ADMINISTRATION GUIDE 23 Configuring the server Restrict access to the server with a cross-domain file You can restrict access to an edge server or the Administration Server with a cross-domain XML file.xml file.connect("rtmpe://www. RTMPE requires about 15% more processing power than RTMP. RTMPS can be used instead. you might want to disable RTMPE (encrypted Real-Time Messaging Protocol).xml file. for example. there is a minor impact on performance.60. 80 (RTMPE). If desired. </AdminServer> 2 Edit the Allow element to specify which connections to Flash Media Administration Server the server responds to. domain names. The crossdomain XML file lets you specify a list of domains from which clients can access the edge server or Administration Server.

Note: All server editions support a version of RTMP called RTMPE. for example. Flash Media Server provides native support for both incoming and outgoing SSL connections.adobe. -1935. If you configure any port other than 443 as secure. . the following client code connects securely: var nc:NetConnection = new NetConnection(). 80. nc. By default. To configure the default secure port. clients must do the following: 1 Set the NetConnection.proxyType property to "best" before connecting. An incoming connection is a connection between Flash Player and the server. To configure SSL. nc.proxyType = "best".5 CONFIGURATION AND ADMINISTRATION GUIDE 24 Configuring the server <RTMP> <!-. the client must specify the port in the URI.0 Language Reference or in the ActionScript 2.RTMPE is the encrypted RTMP protocol covering both RTMPE and RTMPTE --> <!-. 443. for example. 4 Restart the server. when Flash Player connects to Flash Media Server. Flash Media Server returns data to the client over port 443.ini file. See also “XML configuration files reference” on page 80 Configure SSL Secure Sockets Layer (SSL) is a protocol for enabling secure communications over TCP/IP. enter -443 in the ADAPTOR.allow these protocols on this adaptor --> <RTMPE enabled="true"></RTMPE> </RTMP 3 Set the RTMPE enabled attribute to "false".0 Language Reference.com/vod/instance1"). it communicates with Flash Media Server over port 443. RTMPS adheres to SSL standards for secure network connections and enables connections through a TCP socket on a secure port. An outgoing connection is a connection between two servers. specify that a port is secure. 2 Specify the RTMPS protocol in the call to the NetConnection. The default secure port for RTMPS is 443. use RTMPS only for applications that require a higher level of security or that handle sensitive or critical data.HOSTPORT = :1935.This is enabled by default. setting enabled to "false will not --> <!-. “rtmps://host:1935/app”. To specify that a port is secure. RTMPE is more lightweight than SSL and is enabled by default.-443 When Flash Player encounters an “rtmps://fmsdomain/application” string.HOSTPORT parameter in the RootInstall/conf/fms. see the NetConnection. Data passed over the secure connection is encrypted to avoid eavesdropping by unauthorized third parties. Because secure connections require extra processing power and may affect the server’s performance. 80 (RTMP tunneling).connect() entry in the ActionScript® 3. For more information. as follows: ADAPTOR.connect("rtmps://fmsexamples.connect() method. To connect to Flash Media Server over an SSL connection. place a minus (“-”) sign in front of the port number. which is an 128-bit encrypted protocol.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Traffic with an “rtmp://” string uses port 1935. it scans the following ports in order: 1935. If SSL is configured.

.5 CONFIGURATION AND ADMINISTRATION GUIDE 25 Configuring the server Certificates You can get an SSL certificate from a certificate authority or create a certificate yourself.. If the key file is encrypted.xml file for the adaptor you want to configure and locate the following code: <Adaptor> . Your certificate file (if signed by an intermediate CA) should look something like the following: -----BEGIN CERTIFICATE----.. -----END CERTIFICATE----- The first BEGIN CERTIFICATE/END CERTIFICATE pair is your certificate. Secure incoming connections Specify the location of the SSL certificate and the certificate’s private key. The type attribute specifies the type of encoding used for the certificate key file. 1 Open the Adaptor. it must include the intermediate certificate as part of the certificate that the server returns to the client. The location of the private key file for the certificate. Specify an absolute path or a path relative to the adaptor folder. This can be either "PEM" or "ASN1".Last updated 3/2/2010 FLASH MEDIA SERVER 3.. The next BEGIN CERTIFICATE/END CERTIFICATE pair is the intermediate CA that signed your certificate. The private key and the certificate can be combined into one file.. the pass phrase must be specified in the SSLPassPhrase tag. Specify an absolute path or a path relative to the adaptor folder. You can add additional sections as needed. -----END CERTIFICATE---------BEGIN CERTIFICATE----.. The default value is "PEM". and configure the adaptor to listen on a secure port. <SSL> <SSLServerCtx> <SSLCertificateFile></SSLCertificateFile> <SSLCertificateKeyFile type="PEM"></SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> </SSL> ... </Adaptor> 2 Edit the following elements. If a certificate is signed by an intermediate Certificate Authority (CA). Element SSLCertificateFile Description The location of the certificate file to send to the client. SSLCertificateKeyFile type="PEM" .

<Ho4stPortList> <HostPort name="edge1" ctl_channel=":19350">${ADAPTOR.5 CONFIGURATION AND ADMINISTRATION GUIDE 26 Configuring the server Element SSLPassPhrase Description The pass phrase to use for decrypting the private key file. If you don’t specify an Edge element. each virtual host has its own domain name. encryption method. digest type.xml file: <Adaptor> . 1 Locate the following code in the Adaptor. The possible values are listed here: “SSLCipherSuite” on page 91. as follows: ADAPTOR. specify a minus sign before the port number in the ADAPTOR.HOSTPORT}</HostPort> </HostPortList> . and that 443 is a secure port that receives only RTMPS connections. An RTMPS connection to port 443 succeeds: the client performs a SSL handshake that the server completes. if you’re hosting multiple customers. A component can be a key exchange algorithm. 5 Check the RootInstall/logs/edge.. Any value less than 1 is read as 1. enter an Edge element under the SSL element with an identical name attribute.-443 This configuration tells the server to listen on ports 1935 and 443. . An RTMPS connection to port 1935 fails: the client attempts to perform a SSL handshake that the server fails to complete.. Note: Generally. or one of a selected number of aliases for common groupings. the cipher suite list isn’t sent during the SSL handshake. If the private key file is not encrypted. If a client reconnects to a session before SessionTimeout is reached.HOSTPORT = :1935. This lets you assign multiple virtual hosts to one adaptor and return a different certificate for each virtual host.-444</HostPort> 3 For each HostPort element.. Do not change the default settings unless you are very familiar with SSL ciphers. For example. add the following HostPort tag in addition to the default HostPort tag: <HostPort name="edge2" ctl_channel=":19351">:1936. </Adaptor> 2 Create new HostPort elements with unique name and ctl_channel attributes and unique port values for RTMP and SSL. The default value is 5. Configure incoming connections when multiple virtual hosts are assigned to one adaptor You can configure the server to return a certificate based on which port a client connects to.. the edge uses the default SSL configuration.log file to verify that no errors have been reported. authentication method. SSLCipherSuite SessionTimeout 3 To configure a secure port for an adaptor. Each domain name must have its own certificate. The amount of time in minutes a session remains valid. leave this tag empty. 4 Restart the server. An RTMP connection to port 443 also fails: the server tries to perform a SSL handshake that the client fails to complete.ini file.HOSTPORT parameter in the RootInstall/conf/fms.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The SSL ciphers: a colon-delimited list of components.00.

pem when a client connects to it on port 444.5 CONFIGURATION AND ADMINISTRATION GUIDE 27 Configuring the server This sample code demonstrates how to configure edge1 to return cert2. Since there is no Edge tag for edge2. edge2 will use the default configuration specified in the SSLServerCtx section that is directly under the SSL container tag.pem</SSLCertificateFile> <SSLCertificateKeyFile>private.pem when a client connects to it on port 443. Secure outgoing connections 1 Open the Server.pem</SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> <Edge name="edge1"> <SSLServerCtx> <SSLCertificateFile>cert2.pem</SSLCertificateFile> <SSLCertificateKeyFile>private2. 5 Restart the server.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file and locate the following code: <Root> <Server> <SSL> <SSLEngine></SSLEngine> <SSLRandomSeed></SSLRandomSeed> <SSLClientCtx> <SSLVerifyCertificate>true</SSLVerifyCertificate> <SSLCACertificatePath></SSLCACertificatePath> <SSLCACertificateFile></SSLCACertificateFile> <SSLVerifyDepth>9</SSLVerifyDepth> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> </SSLClientCtx> </SSL> </Server> </Root> 2 Edit the following elements.pem</SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> </Edge> </SSL> 4 Validate the XML and save the file. <SSL> <SSLServerCtx> <SSLCertificateFile>cert. The edge2 server returns cert. .

e98140a6. If a self-signed root certificate cannot be found within this depth.xml file to the Adaptor.5 CONFIGURATION AND ADMINISTRATION GUIDE 28 Configuring the server Element SSLRandomSeed Description The number of bytes of entropy to use for seeding the pseudo-random number generator (PRNG).xml files and enter the new values.0. The server may take longer to start up if you specify a large number.xml file configures all adaptors to use the same settings. Do not disable verification unless you are certain you understand the ramifications. ❖ Copy the SSL section in the Server. you might want to use a different certificate for each virtual host. 1 Uncomment the SSL section under the Proxy tag in the appropriate Vhost. SSLSessionCacheGC SSLVerifyCertificate How often to flush expired sessions from the server-side session cache. if this tag is empty. You can import the Windows certificate store to the certs directory by running FMSMaster -console -initialize from a command line. The default value is true. The default value is 9. SSLCipherSuite Configure adaptors to manage outgoing SSL connections independently The SSL section in the Server. On a Windows 32-bit operating system. or one of a selected number of aliases for common groupings. assign one virtual host to each adaptor and configure your adaptors individually to override the settings in the Server.xml. In this case. the server looks for certificates in the RootInstall\certs directory. The possible values are listed here: “SSLCipherSuite” on page 169.0". You don’t need to copy the SSLRandomSeed tag. Configure virtual hosts to manage outgoing SSL connections independently For example. A component can be a key exchange algorithm. and implement a different set of ciphers in a third virtual host. digest type. and the default value is 16.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Each file in the folder must contain only a single certificate. authentication method. A Boolean value specifying whether to verify the certificate returned by the server being connected to (true) or not (false). You cannot specify anything less than 8 bytes. In Linux.xml file. certificate verification fails. Do not change the default settings unless you are very familiar with SSL ciphers. you must specify the location of the certificates. However. in minutes. Specifies the maximum depth of an acceptable certificate. for example. as this tag is a server-level setting that cannot be overridden in Adaptor. The SSL ciphers: a colon-delimited list of components. the more random numbers the PRNG will contain. encryption method. use a certificate in a different folder for one virtual host. SSLCACertificatePath SSLCACertificateFile SSLVerifyDepth Specifies the name of a file containing one or more certificates in PEM format. and the file name must be hash and the extension ". you can disable certificate checking in one virtual host. A folder containing certificates.xml file: . Disabling certificate verification can result in a security hazard. Entropy is a measure of randomness. The more entropy.

you can enable checkpoint events. see the comments in the XML files located in the RootInstall/conf folder. If an SSL tag is omitted from this section.xml files. the server uses the default settings. If you’ve changed the default port. Configure Flash Media Server to work with a hardware SSL proxy When you use a hardware SSL proxy. . The hardware sits between Flash Media Server and the Internet.xml file in a text editor. Data sent between Flash Media Server and the hardware is unencrypted. <Proxy> <SSL> <SSLClientCtx> <SSLVerifyCertificate></SSLVerifyCertificate> <SSLCACertificatePath></SSLCACertificatePath> <SSLCACertifcateFile></SSLCACertificateFile> <SSLVerifyDepth></SSLVerifyDepth> <SSLCipherSuite></SSLCipherSuite> </SSLClientCtx> </SSL> </Proxy> </VirtualHost> When the SSL tag is present.xml and Application. Flash Media Server listens on port 1935 by default. Configure the hardware to listen externally on port 443 to receive encrypted data sent over Internet from clients. 2 Locate the Root/Server/Logging/Checkpoints element: <Checkpoints enable="false"> <CheckInterval>60</CheckInterval> <LogInterval>3600</LogInterval> </Checkpoints> 3 Set the Checkpoints enable attribute to true. You can disable checkpoints at the vhost and application level in the Vhost.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Configure the hardware to forward data to Flash Media Server on port 1935.. The following are available as checkpoint events: connect-continue. you don't need to configure Flash Media Server for SSL. configure the hardware to forward data on that port. Performing general configuration tasks Enable checkpoint logging events Many companies use statistics from the access log to bill customers.5 CONFIGURATION AND ADMINISTRATION GUIDE 29 Configuring the server <VirtualHost> . The hardware encrypts the data and forwards it to the Internet. like this: <Checkpoints enable="true">. play-continue. You must enable checkpoint events at the server level in the Server. Checkpoint events log bytes periodically during an event. 2 Restart the server. the entire SSL section is used to configure the virtual host. 1 Open the RootInstall/conf/Server.. 4 You can optionally set values for the CheckInterval and LogInterval elements to indicate how often the server should check for and log events. You can also override the logging interval at the vhost and application levels.xml file. For more information. To solve this problem. and publish-continue. the events you use to calculate billing might not occur within a billing cycle. If your programming includes live events or 24/7 programming.

Note: Debug connections count against license limits. Allow the server to listen on IPv6 sockets. IPv4. Configuring IPv6 IPv6 (Internet Protocol version 6) is a new version of Internet Protocol that supports 128-bit addresses. 1 Open the Application. Open the RootInstall/conf/fms. Enclose numeric IPv6 addresses in URLs in brackets. 1 Open the RootInstall/conf/fms. 4 Save and validate the file. the server does not allow this connection. see the operating system’s Help. Allow application debugging connections To play back streams and obtain data from shared objects. the Administration Console must make a special debugging connection to the server. server-side script.HTTPCOMMAND_ALLOW parameter to a comma-delimited list of APIs. IPv6 is embedded in all operating systems that the server supports. 2 Locate the following XML: <Debug> <MaxPendingDebugConnections>50</MaxPendingDebugConnections> <AllowDebugDefault>false</AllowDebugDefault> </Debug> 3 Set the AllowDebugDefault element to true.ini file. Activate IPv6 on the network interface card. 5 Restart the server. For more information. The current version of Internet Protocol. You may need to activate IPv6 on the interfaces. Important: In Red Hat® Linux systems. The default value is ping. IPv6 alleviates the address shortage problem on the Internet.xml file” on page 175. By default.NetworkingIPV6 enable attribute to "true". A system that only runs IPv6 can't communicate with a system that only runs IPv4. enclose it in brackets: . Restart the server. 2 Set the USERS.xml file of the virtual host or application you want to configure. supports 32-bit addresses. you must update the NETWORKING_IPV6 value in /etc/sysconfig/network when installing or uninstalling IPv6. Allow Administration API methods to be called over HTTP You must specify each Administration API method that may be called over HTTP. For more information. and restart the server.5 CONFIGURATION AND ADMINISTRATION GUIDE 30 Configuring the server 5 Save and validate the file.Last updated 3/2/2010 FLASH MEDIA SERVER 3.ini file and set the SERVER. 6 Restart the server. see “Users. Wherever a numeric IPv6 address is used in a client-side script. or in the server configuration files.

use the syntax in either of these examples: application.xml file in an application folder.xx. not from application.log. and RTMPE protocols with a network services database and use a service name (or decimal port number.Last updated 3/2/2010 FLASH MEDIA SERVER 3. host name.133. and all available IP addresses for the host in the master. respectively: <Application> <JSEngine> <config> <user_name>jdoe</user_name> <dept_name>engineering</dept_name> </config> </JSEngine> </Application> To access the property in server-side code. Defining Application object properties You can define properties for the server-side Application object in the server’s Application. if you are using an IPv4 host name (a host name that resolves to IPv4) on an RTMPT or RTMPTE connection. For example.config. To define a property.108]:1935/streamtest You must specify the interface zone index for a link-local address: rtmp://[fe80::204:23ff:fe14:da1c%4]:1935/streamtest It’s a good idea to register the RTMP.42 IPv6: fe80::204:23ff:fe14:da1c%4 Listener started ( _defaultRoot__? ) : 19350/v6 Listener started ( _defaultRoot__? ) : 19350/v4 Listener started ( _defaultRoot__? ) : 1935/v6 Listener started ( _defaultRoot__? ) : 1935/v4 Note: On IPv6-enabled Linux. If you define properties in the default Application. the properties are available for all applications on a virtual host.xx.property. When the server starts. . If you define properties in an Application. you should configure the Adaptor.log files (located in the RootInstall/logs/ directory). and admin.xml file. RTMPS. The property name corresponds to the tag’s name.property.xml file. the following XML fragment defines the properties user_name and dept_name.192. it logs available stack configuration. with the values jdoe and engineering. and the property value corresponds to the tag’s contents. edge.log. and that the server host has dual addresses and is listening on both interfaces: FMS detected IPv6 protocol stack! FMS config <NetworkingIPv6 enable=true> FMS running in IPv6 protocol stack mode! Host: fmsqewin2k3-02 IPv4: 10. the properties are available only for that application.prop_name application.config["prop_name"] Note: The properties you define are accessible from application. The following xcomment fields from a sample edge log file indicate that the IPv6 stack and the IPv4 stack are available. create an XML tag in the JSEngine section of the Application. Check the logs.5 CONFIGURATION AND ADMINISTRATION GUIDE 31 Configuring the server rtmp://[fd5e:624b:4c18:ffff:0:5efe:10.xx.128.xml configuration files.133. See HTTPIdent2. if necessary) in the server configuration files.xml appropriately to resolve connections quickly.config.

Also. Native bandwidth detection is faster than script-based because the core server code is written in C and C++.").dept_name + " department.xml file: <Root> <Symbols> <DEPT>Engineering</DEPT> </Symbols> </Root> In addition.config.config. You can also use environment variables and symbols you define in the substitution. The output from either statement would be as follows: I am jdoe and I work in the engineering department. More Help topics “Using symbols in configuration files” on page 10 Configure or disable native bandwidth detection The server can detect a client’s bandwidth in the core server code (called native bandwidth detection). the following trace statements are valid: trace("My computer's name is: " + application. trace("I am " + application.Last updated 3/2/2010 FLASH MEDIA SERVER 3.config["user_name"] + " and I work in the " + application. .5 CONFIGURATION AND ADMINISTRATION GUIDE 32 Configuring the server For example. the outermost edge server detects the bandwidth.xml file.config. For example. or in a serverside script (called script-based bandwidth detection).xml file: <Application> <JSEngine> <config> <compName>${%COMPUTERNAME%}</compName> <dept>${DEPT}</dept> </config> </JSEngine> </Application> In a server-side script. if a client connects through edge servers. trace("My department is: " + application. The output is as follows: My computer's name is: jsmith01 My department is: Engineering Note: Server-side ActionScript trace()statements display in the Live Log panel of the Administration Console.user_name + " and I work in the " + application.compName).config["dept_name"] + " department. which results in more accurate data. assume that the environment variable COMPUTERNAME is equal to jsmith01. with native bandwidth detection. the following XML appears in the Application. the following trace() statements are valid: trace("I am " + application. Native bandwidth detection is enabled and configured by default.config.dept)."). given the previous XML fragment. and you have defined a symbol named DEPT in the substitution.

For example... . set the enabled attribute to false and restart the server. the rate at which they’re sent. Within each individual application folder. and so on until MaxWait time has elapsed. Configuring content storage Setting the location of application files The presence of an application folder within the applications folder tells the server that the application exists. you can configure the size of the data chunks. see the Developer Guide.. DataSize MaxWait 3 Save and validate the Application. followed by 2x bytes. each larger than the last. which sends the data at whatever rate is necessary to measure bandwidth.. 4 Restart the server. edit the locations in the following parameters in the fms. To detect the client’s bandwidth.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Increasing this number provides a more accurate bandwidth figure.5 CONFIGURATION AND ADMINISTRATION GUIDE 33 Configuring the server The server detects bandwidth by sending a series of data chunks to the client. the applications folder is located at RootInstall/applications. <BandwidthDetection enabled="true"> <MaxRate>-1</MaxRate> <DataSize>16384</DataSize> <MaxWait>2</MaxWait> </BandwidthDetection> . Note: To disable native bandwidth detection. create subfolders to create instances of applications.. The number of seconds the server sends data to the client. the following path is to an instance of an application called “my_application”: RootInstall/applications/my_application/first_instance To change the location of the applications folder and the live and vod applications. 2 Edit the following elements. Element BandwidthDetection MaxRate Description Set the enabled attribute to "true" or "false" to turn this feature on or off.. . By default. For example. create subfolders for your applications..xml file: . Within the applications folder. For more information about detecting bandwidth in an application. but it also forces the client to wait longer.xml file.. If desired. The default value is -1. The amount of data in bytes that the server sends to the client. followed by 3x bytes.ini file: • Registered applications folder: VHOST. x bytes are sent. the server attempts to send a series of random blocks of data to the client. 1 Locate the following code in the Application.APPSDIR . each time sending this much more data. and the amount of time the server sends data to the client. The maximum rate in Kbps that the server sends data to the client.

Shared objects are stored in a shared objects folder in the application directory. If the server is running as a service and the user is logged out. a user who connects to the secondRoom instance would not be able to access the content in C:\Content\firstRoom. the mapped drive is removed as well. you must create physical subdirectories for different application instances. Content for each instance is sandboxed from other instance of the same application. Let’s say. you set the storage directory to C:\Content for the chatApp application: <storageDir>C:\Content</storageDir> When a user connects to the firstRoom instance of the chatApp application and tries to play a stream. Flash Media Server sandboxes the content for each instance of an application. lock the server instead of logging out. If you do not want resources to be sandboxed by application and application instance. You could do this for vod applications. for example. Note: Adobe strongly recommends that folders that store streams always contain only streams and no other application files.) 4 Restart Flash Media Server and Flash Media Administration Server. Setting the location of recorded streams and shared objects By default. To run with the mapped drive. all recorded streams for an application are stored in a streams folder in the application directory. when you specify a value in the virtual host-level Application. 3 Check that the server user has appropriate access rights to map to the network drive (system account rights are usually not sufficient.Last updated 3/2/2010 FLASH MEDIA SERVER 3. A Windows network-mapped drive is not valid when a user is logged out. Using the UNC path is preferred when the server is running as a service. the server looks for the stream in a subfolder C:\Content\firstRoom. Use the StorageDir tag in the Application. Within the directory that you specify as the storage directory.5 CONFIGURATION AND ADMINISTRATION GUIDE 34 Configuring the server • Live application: LIVE_DIR • Vod application: VOD_DIR Mapping directories to network drives By default. For example. 2 Make the changes to the configuration. if you already have a collection of video files in a directory other than the application directory. that value is specific to the application. You can change the service user to a user with network access privileges with a UNC path. use virtual directories. When you specify a value for the <storageDir> element in the application-specific XML. . 1 Stop Flash Media Server and Flash Media Administration Server.xml file to specify a different location to store streams or shared objects. the scope is extended to all the applications on that virtual host. the server runs as System Account with no access to network drives. you can set the storage directory to that other directory instead of copying content to the application directory.xml. Otherwise.

or by passing "rtmp://myDomain/VOD/sample. such as C:\my_videos\sample. This element provides various options: • You can specify a virtual directory name or not.xml file to include the virtual directory. you can use the <VirtualDirectory> element in the Vhost. • When specified in an application-specific Application. Virtual directory example: vod One usage scenario for this element is to specify a directory to use for a specific vod application and put video files in this directory to stream them instantly.xml file. You would use the <VirtualDirectory> element in the application-specific Application. To map a directory in this way. but without restricting access by application or application instance. When a name is specified.xml file.play("sample"). Use multiple <Streams> tags.xml file instead of the virtual-host Application. by connecting to the vod application and issuing a NetStream play() call: ns.flv.flv" to the source property of a call to FLVPlayback. you do not need to copy resources to Flash Media Server’s application directory.xml file or the Vhost. <VirtualDirectory> controls only the storage location of resources for that application. the server maps the name to the specified directory and first looks for the stream in the specified directory.play().xml or the Application. To map a virtual directory for an application. edit the application-specific Application. By mapping a virtual directory to a physical directory. • You can specify multiple physical directories for a single virtual directory.xml file. --> <Streams>/. <VirtualDirectory> controls the storage location of all applications on that virtual host. A connecting client will be able to play a file in the virtual directory. All applications on the virtual host can access video files in the specified location.C:\my_videos</Streams> </VirtualDirectory> </StreamManager> </Application> This code overrides the VHost. you might want to specify particular locations for these resources.xml file’s mapping of '/' (if it exists) for this application only. • When specified in the virtual-host Application. In some scenarios. but other applications cannot. as shown in the following example: <Application> <StreamManager> <VirtualDirectory> <!-. . you configure the <VirtualDirectory> tag in Vhost. The order in which the server determines the correct directory to use for streams is as follows: 1 Virtual directory (as specified in <VirtualDirectory>) 2 Storage directory (as specified in <storageDir>) 3 Default location (the streams folder in the application directory) Note: Adobe strongly recommends that folders that store streams always contain only streams and no other application files.Specifies application specific virtual directory mapping for recorded streams. and you can retain your existing classification and categorization of resources.xml file. Any instance of the application can access video files in that location (unlike with <storageDir>).xml file.5 CONFIGURATION AND ADMINISTRATION GUIDE 35 Configuring the server Mapping virtual directories to physical directories Flash Media Server stores recorded streams and video and audio files in default locations in the application directory. although Adobe recommends that if you want control at the virtual host level.Last updated 3/2/2010 FLASH MEDIA SERVER 3.

play(”low/sample”).flv file in the low-bandwidth storage area on the server. It has a higher precedence than the virtual directory mapping in the Vhost.c:\low_bandwidth2</Streams> <Streams>high.play("high/sample") tells the server to look for the sample. For example. C:\low_bandwidth\sample. In the first case.c:\high_bandwidth</Streams> </VirtualDirectory> When the client wants to access low-bandwidth video. including mapping to a network drive. and you might want to store high-bandwidth and low-bandwidth video in separate folders. because the URI specified ("myStream") does not match the virtual directory name that is specified ("low"). and all streams that start with high are stored in a different directory: <VirtualDirectory> <Streams>low.5 CONFIGURATION AND ADMINISTRATION GUIDE 36 Configuring the server The <VirtualDirectory> element in the application-specific Application. so it will always be checked first. protecting your streams from being accessed by other applications on the same virtual host. that is. . You can create a mapping wherein all streams that start with low are stored in specific directories. the server publishes the stream to the default streams directory. then the server looks in the default location (the streams folder) for the file. This call tells the server to look for the sample. the order in which the server looks for files is: 1 Virtual directory (as specified in <VirtualDirectory>) 2 Storage directory (as specified in <storageDir>) 3 Default location (the streams folder in the application directory) Virtual directory example: Local and network file paths The following table shows three examples of different virtual directory configurations. a call to ns.xml.flv inside the directory specified by the storage directory element (<storageDir>). ns. so the server will then look for sample. your application could allow users to view either high-bandwidth video or low-bandwidth video.play("low/sample").xml file affects only that particular application.flv file in the c:\high_bandwidth folder.flv file in the C:\low_bandwidth and C:\low_bandwidth2 folders.xml file. Virtual directory example: Separating high.play("sample"). the client calls ns. If no storage directory is specified by <storageDir>. which is mapped in Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Similarly.flv A client connects to the sample. C:\low_bandwidth and C:\low_bandwidth2. Note that if the client calls ns.and low-bandwidth video One way you can use directory mapping is to separate storage of different kinds of resources. the stream name does not match any virtual directory specified. and how the configurations determine the directory to which a recorded stream is published.c:\low_bandwidth</Streams> <Streams>low.

it is enabled by default. 1 Open the fms.ini file in a text editor.5 includes Apache HTTP Server.flv Configuring Apache HTTP Server About Apache HTTP Server Flash Media Server 3. Alternate configurations To do any of the following. see “Monitoring and Managing Log Files” on page 55.5 by default on Windows). you can serve video over HTTP progressive download as a fallback solution for web proxies that break RTMP or RTMPT. edit the RootInstall/Apache2.e:\fmsstreams low.conf file and the standard secondary configuration files are in the RootInstall/Apache2.xml <VirtualDirectory><Streams> tag low. For more information. .2. The web root is RootInstall/webroot.2/conf folder.2/logs folder. edit the fms.Last updated 3/2/2010 FLASH MEDIA SERVER 3.flv e:\fmsstreams\myStream. The Flash Media Server installation of Apache is like the standard installation.2/conf/httpd. The Apache documentation and configuration files use “ServerRoot” to indicate the Apache root installation folder. The Apache root installation folder is RootInstall/Apache2.ini and Adaptor.\RootInstall\applications\yourApp\streams\_definst_\myStream. If you install and enable the web server. such as ASC • Handle any non-standard MIME types required for progressive download • Serve the default server-status and server-info pages • Modify source directories Enable Apache When you install Flash Media Server and choose to install Apache. To manually enable Apache. container HTML pages.. Note: The Flash Media Server documentation uses “RootInstall” to indicate the Flash Media Server root installation folder (C:\Program Files\Adobe\Flash Media Server 3. as well as RTMP. • The log files are in the RootInstall/Apache2. You can serve content over HTTP. You can use Apache documentation for most configuration tasks.flv \\mynetworkDrive\share\fmsstreams\myStream.5 CONFIGURATION AND ADMINISTRATION GUIDE 37 Configuring the server Mapping in Vhost.xml files. Installation locations The Apache server that installs with Flash Media Server differs from a standard Apache installation in the following ways: • The apachectl files are in the RootInstall/Apache2.\\mynetworkDrive\share\fmsstreams URI in NetStream call Location of published stream "myStream" "low/myStream" "low/myStream" c:\. you can deliver client SWF files. In addition. • The httpd.conf file: • Handle multiple adaptors or virtual hosts • Block sensitive file types.e:\fmsstreams low. and media assets from Flash Media Server.2/manual/programs folder..

you can enable or disable proxying through the HTTPPROXY. set the parameter to the remote server you want to use: HTTPPROXY. HTTP connections by default use port 80.5 CONFIGURATION AND ADMINISTRATION GUIDE 38 Configuring the server 2 Add port 80 to the ADAPTOR. To allow Flash Media Server to serve media over HTTP when RTMPT is blocked. HTML files.com:80 Deliver SWF files and HTML files over HTTP Apache can deliver SWF files. Flash Media Server proxies HTTP connections to port 8134. JPG files. The following default configuration proxies port 80 HTTP requests to local port 8134: HTTPPROXY. By default.ini file. open the file for the adaptor you want to configure.ini file.HOST}</Host> </HttpProxy> Set the value of the HTTPPROXY.2/cgi-bin RootInstall/Apache2.HOST variable in the RootInstall/conf/fms.xml configuration file in a text editor. Place files that you want to deliver over HTTP in the correct folders.HOSTPORT = :1935.2/local-cgi-bin Example URL http://myFMSServer.ini file. 5 Set the enable attribute of the HttpProxy tag to "true".HTTPD_ENABLED = true 4 Open the Adaptor.HTTPD_ENABLED parameter to true: SERVER. and many other standard file types over HTTP. You can also remove the variable and set the value directly in the Host tag. 7 Restart the server.pl http://myFMSServer.2/webroot RootInstall/Apache2. set the SERVER.example.com/local-cgi-bin/someScript. If you have multiple adaptors. 80 3 To start and stop Apache when Flash Media Server starts and stops. set a value for the HTTPPROXY. The default Adaptor.swf http://myFMSServer. You can also specify the port to proxy to or proxy to a remote server.pl .HOSTPORT tag. In the fms.HOST parameter.com/cgi-bin/someScript. Configure HTTP proxying in the RootInstall/conf/fms. Apache is configured to use following paths: Path / /cgi-bin /local-cgi-bin Location RootInstall/Apache2. 6 Save and validate the Adaptor.xml file is located in the RootInstall\conf\_defaultRoot_ folder.HOST = To proxy to a remote server. To enable HTTP proxying.xml file.HOST = :8134 Setting the parameter to no value disables HTTP proxying: HTTPPROXY.HOST = webfarm. ADAPTOR. Configure HTTP proxying Flash Media Server uses port 80 for RTMPT connections.HOST parameter. as in the following: <HttpProxy enable="true" maxbuf="16384"> <Host port="80">${HTTPPROXY.Last updated 3/2/2010 FLASH MEDIA SERVER 3.com/app.

on the other hand. edit the httpd. if a client requests the URL http://fms.flv file from the RootInstall/applications/hd/streams/_definst_/ folder.2/cgi-bin RootInstall/Apache2. fcs.org.2. place it in the local-cgi-bin folder. For example. not application-specific. Deploying CGI programs By default. send. For information. Apache is configured with the following global aliases: Alias /cgi-bin/ /local-cgi-bin/ Path RootInstall/Apache2.example.apache.2/cgi-bin/someScript. see the Apache documentation at www.9 documentation at www. either use one of the predefined web directories or create a web directory for that application. To create aliases for application-specific folders. fpad.example. add an alias to the RootInstall/Apache2. use custom aliases to give the HTTP virtual directories slightly different names from the RTMP applications. To create a web directory for an application. The following keywords are reserved words: open. For example. Any SWF files and HTML files you want to serve over HTTP must be in these folders or in application-specific folders. see the Apache HTTP Server version 2. are accessible only to Flash Media Server.2/conf/httpd. the following lines create an alias that points to the streams directory of an application called “hd”: Alias /hd/ "applications/hd/streams/_definst_/" <Directory "applications/hd/streams/_definst_/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow. Files in the local-cgi-bin folder. Apache attempts to execute the file RootInstall/Apache2. For example. For more information about editing the configuration file. edit the RootInstall/Apache2. Reserved words cannot be used for directory names under the webroot directory or for anything else.2/local-cgi-bin Notes Accessible to anyone through an HTTP call.2/conf/httpd.com/cgi-bin/someScript.com/hd/someVideo.pl. Using Apache as a WebDAV host You can configure the web server to act as a WebDAV host.flv.2/cgi-bin folder is a CGI program. Accessible only to Flash Media Server.pl. Create web directories for applications To have Apache serve content over HTTP.conf file.deny Allow from all </Directory> Copy media files to the RootInstall/applications/hd/streams/_definst_/ folder to serve them over HTTP.5 CONFIGURATION AND ADMINISTRATION GUIDE 39 Configuring the server These folders are global.Last updated 3/2/2010 FLASH MEDIA SERVER 3. fms. Apache serves it the someVideo. To change the location of the cgi-bin or the local-cgi-bin. If you have a CGI program used by server-side ActionScript.apache. if a client requests http://fms.xml.conf file. . Apache assumes any file you place in the RootInstall/Apache2.org. such as “open_”. close. crossdomain. idle.conf file. If you have applications with these names.

5 > Flash Media Administration Console. Open the fms_adminConsole. do one of the following: • On Windows. When you log in to the Administration Console as a virtual host administrator.swf and fms_adminConsole. the Administration Server in installed on port 1111 (the default value at installation time). • On Mac® OS. 2 (Optional) Specify a server name. • On Linux. If the Administration Server is installed on a port other than 1111 (the default). Server administrators have access to all applications running on the server. monitor applications. If you installed Apache with Flash Media Server. Connecting to the Administration Console About the Administration Console The Administration Console is an Adobe Flash Player application (fms_adminConsole. open the fms_adminConsole. The Administration Console remembers the server address for this server name the next time the console is opened.htm and fms_adminConsole. To log in to the Administration Console. Application developers can also use the Administration Console to debug applications. the fms_adminConsole. Note: The Administration Console calls Administration APIs to inspect and manage the server. This name is an alias you can use to connect to a server quickly. 3 In the Server Address box.Last updated 3/2/2010 40 Chapter 3: Using the Administration Console Use the Adobe Flash Media Server Administration Console to maintain the server. your session is specific to a virtual host. the fms_adminConsole. The Administration Console connects to Adobe Flash Media Administration Server.swf and fms_adminConsole. and you can only manage applications running on that virtual host. select Start > Programs > Adobe > Flash Media Server 3. Connect to the Administration Console There are two types of administrators: server administrators and virtual host (vhost) administrators.htm and fms_adminConsole. By default. the Administration Server must be running. you must enter the port number as well. 1 To open the Administration Console.ini file. do one of the following: • Type localhost if the server and the Administration Console are running on the same computer. localhost:1234.htm files are located in the root installation folder.swf files in a browser with Flash Player. copy the fms_adminConsole. for example.htm files are located in the RootInstall/webroot folder. . which connects to Adobe Flash Media Server. Entering localhost connects you to the default virtual host on this computer.swf files to the Mac.swf) that lets you manage the server and view information about applications running on the server. Use the Flash Media Server Administration API Reference to build your own administrative applications. Otherwise.htm file in a web browser that has Flash Player installed. You can change the port number of the Administration Server after installation by editing the fms. and manage users.

you must specify the name of the adaptor.34. To run the Administration Console from a computer other than the one in which the server is installed. verify that the Allow and Deny tags in the Users.56. and passwords from the Administration Console. You can disconnect at any time by clicking Logoff. however. Click the question mark icon to display links to Flash Media Server Help. enter the administrator user name and password you entered during installation. In both cases.myCompany.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 4 Enter your username and password. such as 10 seconds. Reverting deletes all saved servers. you can edit your local hosts file at windows\system32\drivers\etc\hosts. The username and password are stored in the RootInstall/conf/fms. Otherwise. For example. (The Revert button. To log in to a virtual host that is not on the default adaptor.com). To test this behavior on Windows.swf to the other computer. If you are the server administrator who installed the server. Change the refresh rate of the Administration Console ❖ Click the pop-up menu next to Refresh Rate (upper-right corner) and select a new time duration. or pause refreshing at any time. check that the Administration Server has not been configured to prohibit connections from the specific domain or IP address you are using. www. Also. The host name must be mapped to a valid network IP address.com) or the IP address and port number (12. 6 (Optional) Select the Automatically Connect Me option. enter the username and password you received from the server administrator. user names. or make sure that this file is in the webroot directory so it can be accessed remotely. Change or pause the refresh rate The information in the Administration Console panels refreshes every 5 seconds by default. the vhost administrator JLee would enter the following information in the Username box: _secondAdaptor_/JLee. . Near the top of every screen of the Administration Console are two icons. Pause refreshing the Administration Console 1 Click the pop-up menu next to Refresh Rate (upper-right corner). does not affect the server.example. Note: The color of the vertical bar in the upper-right corner (next to the question mark icon) indicates whether the Administration Console is connected (green) or not connected (red) to a server. Click the folder icon to display links to the Flash Media Server website and related resources.ini file. 5 (Optional) Select the Remember My Password option.5 CONFIGURATION AND ADMINISTRATION GUIDE 41 Using the Administration Console • To connect to a virtual host other than the default virtual host.) 8 Click Login. • If you are connecting remotely by running the Administration Console on another computer.htm and fms_adminConsole. You can change the refresh rate to any time interval between 1 and 60 seconds. scroll down. 7 (Optional) Click Revert to return the Administration Console to its default settings. Ensure your computer has permission to connect to the specified port on the other computer. enter the fully qualified host name (for example. enter the server’s name (FlashMediaServer. when logging in to a virtual host on the adaptor _secondAdaptor_. copy fms_adminConsole.xml file allow the connection from the other computer’s IP address. All custom resizing within the Administration Console is restored to the original state.78:1112) of the Administration Server to which you want to connect. and select Pause.

the state of an application can be monitored. which can be edited. click the pop-up menu and select a time duration. (The application must already be configured on the server. 4 Click View Applications. From here. the Administration Console displays a panel that lists the currently running application instances. 3 Enter the administrator user name and password. or unload application instances. 2 Enter the name and address of the server or virtual host to which you want to connect. move to another panel and then back to refresh the console. 5 Click New Instance. .Last updated 3/2/2010 FLASH MEDIA SERVER 3.) 7 The Administration Console adds a default instance _definst_. 3 To start refreshing information again. 6 Select the application from the pop-up menu. Manually load an application instance in the Administration Console 1 Follow the steps in “Connect to the Administration Console” on page 40. To cancel. load. A red border appears around the panels of the Administration Console to show that the refresh feature is paused. press Shift+Escape. Note: If you add an application while the Administration service is running and the new application doesn't appear in the Administration Console. Use the View Applications panel to view. Press Enter to submit the name and start the application instance. Inspecting applications View applications After connecting to a server or virtual host.5 CONFIGURATION AND ADMINISTRATION GUIDE 42 Using the Administration Console 2 Click Pause Refresh to continue.

1 Follow the steps in “Connect to the Administration Console” on page 40. • Click the Clients column header to sort by client. End an application instance When an application instance is ended. 2 Click View Applications. 2 Click View Applications. 3 In the applications list. (If the console refresh feature is paused. 2 Click View Applications. 3 Select an application from the list. such as total uptime or number of users Sort applications list 1 Follow the steps in “Connect to the Administration Console” on page 40. 4 Click Unload (stop icon to the right of the Performance tab) Viewing log messages for an application The Administration Console Live Log panel displays log messages and trace() statements from server-side scripts for the selected application instance. 2 Click View Applications.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 43 Using the Administration Console Reload an application instance in the Administration Console Reload an application instance to reload the server-side scripts for the instance or to disconnect all of its users while immediately allowing new connections. log messages are still received. all users are disconnected and all instance resources are released. 4 Click Reload (circular arrow icon to the right of the Performance tab).) . 1 Follow the steps in “Connect to the Administration Console” on page 40. The following information is listed for the application on the different tabs: • Log messages generated by the application instance on the server • A list of clients connected to the application instance • A list of active shared objects for the application instance • A list of active streams for the application instance • Information about the overall state of the selected application instance. View information about an application 1 Follow the steps in “Connect to the Administration Console” on page 40. 3 Select the application from the list. The information in this panel is updated whenever the application instance generates a log message. 3 Select an application from the list. do one of the following: • Click the Name column header to sort the applications list by name.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 44
Using the Administration Console

Live Log panel

1 Follow the steps in “Connect to the Administration Console” on page 40. 2 Click View Applications. 3 Click Live Log. 4 Select an application from the list. 5 Type text in the Find text box and click Find Next. Use the Find Previous and Clear Log buttons as necessary.

Viewing active streams
Use the Administration Console Streams panel to view information about streams and to play streams.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 45
Using the Administration Console

Streams panel

1 Follow the steps in “Connect to the Administration Console” on page 40. 2 Click View Applications. 3 Click Streams. 4 Select an application from the list. The Streams panel displays the following information:

• Name: For NetStream streams, the name is the NetStream ID (a server-generated number). For a live stream
being published, the entry displays the live stream name. For a recorded steam, the entry displays the FLV or MP3 filename; for example, flv:stream2.flv or mp3:sound.mp3. If a client requests the stream2.flv, there will be two entries: one for flv:stream2.flv (stored) and one for the actual network stream going to the client.

• Type: A string that describes the type of stream, either stored, live, or NetStream.
5 Select a stream to view its properties. The values of the properties are as follows:

• Name: The actual stream name, not streamID. • Status: States if the stream is publishing, playing live, or playing recorded. • Client: The client ID playing the stream. • Time: The time that the client started playing the stream.
Note: If the stream type is available for debugging, the Administration Console displays its properties in the adjoining panel. If the type is not available for debugging, an error message is displayed.
6 Click Play Stream to start playing the selected stream in a separate window that is the size of the selected stream.

(The Play Stream button appears only if a debug connection is possible. Only named streams can be played.)

Viewing active clients
The Administration Console Clients panel lists detailed information about all clients connected to an application.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 46
Using the Administration Console

Clients panel

1 Follow the steps in “Connect to the Administration Console” on page 40. 2 Click View Applications. 3 Click Clients. 4 Select an application from the list. The following information is displayed:

• Client ID: The internal ID of the client; this represents a server-generated number that Flash Media Server uses
to identify each client.

• Protocol: The connection protocol that the client uses, such as RTMP. • Bytes In and Bytes Out: The average bytes per second being sent to and from the server. The Administration
Console calculates this ratio by dividing the total number of bytes received in the most recent 15 seconds by 15. When the panel first appears, these figures appear as pending because there is only one data point to start with; figures appear after the panel is open for 15 seconds.

• Connection Time: The date and time the client connected. • Messages In and Messages Out: The number of messages sent to or from the client. Messages In reflects update
requests sent from clients to the server; Messages Out reflects notification of successful updates sent from the server to connected clients.

• Drops: The number of messages dropped since the client connected. For live streams, audio, and video,
messages may be dropped; for recorded streams, only video messages are dropped. Command messages are never dropped.

Viewing active shared objects
The Administration Console Shared Objects panel lists the active shared objects for an application and can be useful when debugging an application. The information is automatically refreshed every 5 seconds, or click Refresh to refresh at any time. The Administration Console displays the name, type (persistent or temporary), and connections (number of users subscribed) of each shared object.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 47
Using the Administration Console

Shared Objects panel

Note: The Administration Console was built using ActionScript 2.0 and cannot understand AMF3 data. Therefore, the Administration Console cannot display data in remote shared objects in applications built in ActionScript 3.0 unless the application sets the NetConnection.objectEncoding property to AMF0.
1 Follow the steps in “Connect to the Administration Console” on page 40. 2 Click View Applications. 3 Click Shared Objects. 4 Select an application from the list. 5 To display information about a shared object, click the object. The number of users currently connected to and

using the shared object is displayed, along with the data properties assigned to the shared object.

View performance information
The Administration Console Performance panel shows information about the overall state of the application instance. The information is automatically refreshed every 5 seconds, or click Refresh to refresh at any time.

(To determine why connections may have failed. including the total number of clients who connected to the application instance since it started.5 CONFIGURATION AND ADMINISTRATION GUIDE 48 Using the Administration Console Performance panel 1 Follow the steps in “Connect to the Administration Console” on page 40. • Active Connections: The number of users currently connected to the application instance. these figures appear as pending because there is only one data point to start with. select Total and deselect In and Out to show only the total amount of bandwidth used. and the combined amount of data traffic. . The following information is displayed: • Clients: Information about clients connected to this application instance. data received. audio packets. The Administration Console calculates this ratio by determining the total number of bytes received in the most recent 15 seconds and dividing that value by 15. and command messages) sent per second. in the Bandwidth graph. 3 Click Performance. • Bandwidth: The amount of data that the application instance manages. look at the Live Log panel under View Applications.) • Lifespan: The length of time the application instance has been running and the date and time it began to run. including data sent. When the panel first appears. • Bytes Per Second: The average number of bytes sent per second for this application instance.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 2 Click View Applications. active clients. For example. and the number of users whose attempts to connect to the application instance were rejected. 5 Select and deselect checkboxes to customize the information displayed on the graphs. • Messages Per Second: The average number of messages (video frames. figures appear after the panel is open for 15 seconds. 4 Select an application from the list. • CPU and Memory Usage: The percentage of CPU and memory used by Flash Media Server.

3 Click New User.Last updated 3/2/2010 FLASH MEDIA SERVER 3. see the comments in the Users. You do not need to restart either server.Deny</Order> </User> </UserList> For more information. Server administrators can access and perform all operations on all tabs. Edit the Users. and Order elements specify the hosts from which the administrator can connect to the Administration Console. Deny.ADMIN_USERNAME}"> <Password encrypt="false">${SERVER. .Deny</Order> </User> <User name="janedoe"> <Password encrypt="false">S4mpl3P4ss</Password> <Allow></Allow> <Deny></Deny> <Order>Allow. 2 Locate the UserList section.xml file to add server administrators 1 Open the RootInstall/conf/Users. 3 Add a new <User></User> section for each server administrator you want to add.xml file.5 CONFIGURATION AND ADMINISTRATION GUIDE 49 Using the Administration Console Manage administrators About administrator roles Administrators are users who are allowed to log in to the Administration Console. Server administrators can control all virtual hosts and perform server-level tasks.xml file. The Allow. such as restarting or shutting down the server. They cannot manage servers or administrative users. 4 Enter the user name and password and click Save. The following sample XML adds a user who can connect from any domain: <UserList> <User name="${SERVER. 2 Select the Manage Users tab. Virtual host administrators can access and perform operations on the View Applications tabs. Virtual host administrators can manage the applications on their virtual host—for example. 1 Log in to the Administration Console as a server administrator.xml file.ADMIN_PASSWORD}</Password> <Allow></Allow> <Deny></Deny> <Order>Allow. There are two types of administrators: server administrators and virtual host administrators. The Password element specifies the password. Add administrators Use the Administration Console to add server administrators Note: You must be a server administrator (not a virtual host administrator) to access the Manage Users tab. The Administration Console adds the new user and password to the Users. The User name attribute specifies the user name. they can reload or disconnect applications.

xml. 3 Add a new <User></User> section for each virtual host administrator you want to add. Delete user account 1 Log in to the Administration Console as a server administrator.com/Users. RootInstall/conf/_defaultRoot_/www. Delete administrator accounts and reset passwords You must be a server administrator (not a virtual host administrator) to perform operations on the Manage Users tab.xml file. The following sample XML adds a user who can connect from any domain: <UserList> <User name="${SERVER.5 CONFIGURATION AND ADMINISTRATION GUIDE 50 Using the Administration Console 4 Validate the XML and save the Users.xml file from the RootInstall/conf folder.Deny</Order> </User> </UserList> For more information.xml file in the root folder of the virtual host. see the comments in the Users. Reset user password 1 Log in to the Administration Console as a server administrator. The Password element specifies the password. 3 Select a user. 4 Validate the XML and save the Users. copy the Users.xml file.sampleVhost. 5 Type a new password. Add virtual host administrators 1 Open the Users. Deny. 4 Click Reset The Password For This User. for example. 4 Click Delete This User Account On The Server.ADMIN_PASSWORD}</Password> <Allow></Allow> <Deny></Deny> <Order>Allow. 2 Click Manage Users.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 2 Locate the UserList section. 2 Click Manage Users. . and Order elements specify the hosts from which the administrator can connect to the Administration Console.xml file. The User name attribute specifies the user name. 3 Select a user. If the file doesn’t exist.ADMIN_USERNAME}"> <Password encrypt="false">${SERVER.Deny</Order> </User> <User name="vHostAdmin"> <Password encrypt="false">Ex4mpl3P4ss</Password> <Allow></Allow> <Deny></Deny> <Order>Allow. The Allow. 5 Confirm the action.

• Review information about the applications located on the server or virtual hosts. Manage Servers panel Use the small buttons at the top and bottom of the panel to perform the following tasks: • Add a new server to the list. if necessary. • Ping the server to verify that it is running. The servers are arranged in a tree structure. • Edit server login information (user name and password) and select options such as remembering the password and automatically connecting when logging in to the server. From here. The Servers panel occupies the left side of the screen in this section of the Administration Console. you can perform the following actions: • Review the performance statistics for the computer where the applications are running. The panel lists the servers and virtual hosts that you can access and manage. A series of tabs is displayed along the top of the Manage Servers panel. add serial keys. • Connect to the selected server.5 CONFIGURATION AND ADMINISTRATION GUIDE 51 Using the Administration Console Managing the server Monitoring server performance You can review the performance of individual servers or a group of servers using the Administration Console. . • Delete a server from the list. • Review server licenses and. • Review the access log and server log. • Review information about connections to the server.Last updated 3/2/2010 FLASH MEDIA SERVER 3.

3 Click Applications. • Run garbage collection to clear unused server resources.xml and VHost. 3 Click Details. and CPU and memory resources consumed Viewing connection details The Administration Console Connections panel lists all client connections to the selected server. The following information is displayed for each client accessing the server or virtual host: • Server name • If connection has been made • Number of connections • Number of disconnections • Number of bytes in and out • Number of messages dropped Viewing application details The Administration Console Applications panel displays detailed information for all the applications running on the selected server or virtual host. from memory. 2 Click Manage Servers.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 3 Click Connections.xml configuration files. 1 Follow the steps in “Connect to the Administration Console” on page 40. such as streams and application instances. 4 Select a server from the list. 2 Click Manage Servers. . (Automatic garbage collection intervals can be set in the Server.) • Stop a server or virtual host. The following information is displayed: • Total number of current clients • Life span of the server • Graphical displays of active connections.5 CONFIGURATION AND ADMINISTRATION GUIDE 52 Using the Administration Console • Restart the server or a virtual host. 4 Select a server from the list. bandwidth resources consumed. 1 Follow the steps in “Connect to the Administration Console” on page 40. Viewing server details The Administration Console Details panel displays live information for the server. 1 Follow the steps in “Connect to the Administration Console” on page 40. 2 Click Manage Servers.

6 Restart the server. is displayed: • Server name • Application name • Number of instances of the application that have been loaded on and unloaded from the server • Number of users that are connected • Number of users that have connected and disconnected • Number of instances currently active • Number of instances that have been unloaded from the server • Total number of connections that have been accepted or rejected for each application Viewing license files The Administration Console License panel is where you add serial keys. so note the capacity totals listed near the bottom of the Administration Console. Only serial numbers that are added using the Administration Console can be deleted using the Administration Console. For each license. 4 Enter the serial key number in the text boxes at the bottom of the Administration Console. 3 Click License. 2 Click Manage Servers. 2 Click Manage Servers.ini or the <LicenseInfo> tag of the Server. The lower frame displays information about custom licenses. . added by editing configuration files directly) to either fms. 4 Select a server from the list. 1 Follow the steps in “Connect to the Administration Console” on page 40. The panel also displays detailed information for all serial keys authorizing you to run Flash Media Server on the selected server. The name of each application.xml file cannot be removed using the Administration Console. Add a serial key Add serial keys in the Administration Console License panel. the following information is displayed: • The individual serial key number • Authorized peak number of client connections • Bandwidth cap • Whether the license is valid (true) or not (false) Note: Your organization may have more than one license. Note: Serial numbers that are added manually (that is. 3 Click License. 1 Follow the steps in “Connect to the Administration Console” on page 40. along with the following information. 5 Click Add Serial Key.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 53 Using the Administration Console 4 Select a server from the list.

1 Follow the steps in “Connect to the Administration Console” on page 40.Last updated 3/2/2010 FLASH MEDIA SERVER 3. 3 Click Server Log.5 CONFIGURATION AND ADMINISTRATION GUIDE 54 Using the Administration Console View the access log file The Administration Console Server Log panel displays messages that are written to the access log. . 2 Click Manage Servers. Use the Find Previous and Clear Log buttons as necessary. 4 Select a server from the list. 5 To locate a specific string. type it in the Find text box and click Find Next.

you can place Logger. see comments in the Server.log Tracks information about users accessing the server. If the Scope tag is set to vhost.xml file contains a Logging section that controls logging behavior for the entire server.xml and Logger. virtual host Logger. The server also maintains diagnostic logs and application logs for application activities. The Server. the root Logger.xml file in the RootInstall/conf folder determines the logging configuration for the whole server.XX.xml file doesn’t exist. The log files track server activity.xml files are ignored. and general diagnostics.apache. If the Scope tag is set to server. application. Configuration files for logging Use the Server.log Tracks information about activities in application instances. edit the RootInstall/Apache2. The default location of the Apache log files is RootInstall/Apache2. If the Scope tag is set to server. The location of each log file is determined by the Directory and FileName tags in the Logger. . For more information. The Apache logs are named access_log and error_log.xml and Logger.2/conf/httpd.Last updated 3/2/2010 55 Chapter 4: Monitoring and Managing Log Files Adobe Flash Media Server has a variety of log files to help you manage and troubleshoot the server. how users are working with applications.conf file.xml files in virtual host root folders to control the behavior of each virtual host. see the Apache documentation at www. Flash Media Server handles log rotation for the Apache logs.2/logs. Logs are in W3C format.XX.xml configuration files to configure logging. the Logger. Administrators can use standard parsing tools to parse the log files. such as who is accessing the server. The Logging section also contains a Scope tag that determines whether the server writes separate log files for each virtual host or one file for the entire server. The Logging section includes an Enable tag that determines whether the server logs events. Flash Player no longer notifies the server about pause events.xml file controls the logging behavior. access. For more information about Apache log files. To change the location of the log files. Working with web server log files Flash Media Server installs with the Apache HTTP Server.xml files installed in the RootInstall/conf directory. diagnostic logs Track information about server operations. The logs are in the default Apache error and combined access log formats. Note: In Adobe Flash Player 9 Update 3.org. If the Scope tag is set to vhost and a virtual host Logger. Working with log files About log files The server maintains several different types of logs.xml files. The server outputs statistics about client connections and stream activity to access logs.

and enclose numeric IPv6 addresses in URLs within brackets. You can move the current active file. but there are methods for managing log file size. see “Configuring IPv6” on page 30. Note: Log file rotation cannot be disabled.192. only the two /v6 entries would be displayed. . To use IPv6. Flash Media Server (when it starts) logs available stack configuration. Two types of rotation schedules can be established. Use the rotation element in the Logger.xx. even if the socket listeners accept connections over both IPv4 and IPv6. For more information about the Logger. Choose a large value for the MaxSize tag. set a rotation that occurs when the log exceeds a specified length. One option is to rotate log files.xml configuration files. The first option is to set a daily rotation at a certain time. However. After following those steps. and admin. You can write an operating system script to delete or back up the log regularly.xml file installed in the /conf directory. you can set values in the Logger. moving or deleting the oldest files. For example. and all available IP addresses for the host in the master. enable Flash Media Server to listen on IPv6 sockets. and maximum number of log files to keep can also be customized using the rotation element. see “Configuration files for logging” on page 55.xml configuration files that effectively turn off rotation. In the example above.xml file to specify a rotation schedule for log files. and that the Flash Media Server host has dual addresses and is listening on both interfaces. FMS detected IPv6 protocol stack! FMS config <NetworkingIPv6 enable=true> FMS running in IPv6 protocol stack mode! Host: fmsqewin2k3-02 IPv4: 10. For more information about using IPv6. host name. you need to activate IPv6 on the network interface card. see the Logger.133. For an example.log. For important log files. The following x-comment fields from a sample edge log file indicate that the IPv6 stack and the IPv4 stack are available. in Linux.Last updated 3/2/2010 FLASH MEDIA SERVER 3.log. the server creates a new file on the next log event. Name.42 IPv6: fe80::204:23ff:fe14:da1c%4 Listener started ( _defaultRoot__? ) : 19350/v6 Listener started ( _defaultRoot__? ) : 19350/v4 Listener started ( _defaultRoot__? ) : 1935/v6 Listener started ( _defaultRoot__? ) : 1935/v4 Note: In Red Hat Linux.xx. edge. the edge logs display only the highest IP version the socket listeners are using. Alternatively. Set the Schedule type to "duration" and choose a long maximum duration.log files.xx. Verifying IPv6 in log files IPv6 (Internet Protocol version 6) is a new version of the Internet Protocol that supports 128-bit addresses. setting daily at 00:00 rotates files every 24 hours at midnight.5 CONFIGURATION AND ADMINISTRATION GUIDE 56 Monitoring and Managing Log Files Rotating and backing up log files Log files grow larger over time. maximum file size in kilobytes. move the log directory to a backup location.

all logs for a particular virtual host are found in a subdirectory within the logs directory. and version. you can find out about various events. A checkpoint event that provides updates of a corresponding connect event at intervals. the events you need to calculate billing might not occur within a billing cycle. Client plays a stream. The name of the subdirectory matches the virtual host name. Use the x-sid field (stream id) and the c-client-id field to find the corresponding publish event.log.log.xml file.5 CONFIGURATION AND ADMINISTRATION GUIDE 57 Monitoring and Managing Log Files Access logs Reading access logs The access log records information about requests by Flash Player and Flash Media Server application instances. Using these logs. how much total bandwidth was consumed during the session. Checkpoint events log bytes periodically from the start to the end of an event. If your programming includes live events or 24/7 programming. disconnect publish unpublish publish-continue session stream stream stream play stream .2007052401. respectively. Logging events periodically for live and 24/7 applications Many companies use statistics from the access log to bill customers.xml file to “vhost. waiting for the client to be authenticated. you can enable checkpoint events. You can use the substitution string to customize the filename of the access log. MM.) To configure the server to create separate log files for each virtual host. see “Enable checkpoint logging events” on page 29. Client publishes a live stream.) Flash Media Server defines event categories.log could be named access. and which streams were accessed by the connection (and similar resource information).[YYYYMMDDNN]. You can use the status codes associated with specific events to troubleshoot event failures. For information about configuring checkpoint events. DD. Client unpublishes a live stream. Client disconnects. A checkpoint event that provides updates of a corresponding publish event at intervals. You can also use this information to determine which applications are used most. Substitution strings can be found in the [] brackets. such as when a user connected to the server. The following are available as checkpoint events: connectcontinue. When logging is configured on a per-virtual-host basis. Logging can be customized to record all events or only specific events by editing the <Events> and <Fields> elements in the Logger. which is located in the RootInstall/logs directory. Access events defined in access logs Event connect-pending connect connect-continue Category session session session Description Client connects to the server. (For example. and for each category. You can configure how often the server logs checkpoint events. To solve this problem. access.” (This is a separate scope tag just for logging. and NN representing year. and publish-continue. with YYYY. date. Client connects to the server.xx. it defines events that can be recorded. Use the c-client-id field to find the corresponding connect event. play-continue.Last updated 3/2/2010 FLASH MEDIA SERVER 3. month. You can also configure the server to create a separate file per virtual host. The default configuration creates a single access log per server. set the value of the Scope tag in the Server. The default access log is access.

Client smart unpauses a stream.inBufferSeek=true (called a “smart seek”). Client pauses a stream but the server still sends data to the client so the player has enough data to play when the client unpauses. If a client seeks outside the buffer. the client sends a “seek” event. The server received a “startTransmit” command. Server has started. Client connects to server. The stream position is logged in the “cspos” field. Client begins recording a stream.inBufferSeek=true and the client seeks outside the buffer. The server received a “stopTransmit” command. Client jumps to a new location within a recorded stream. The stream position is logged in the “c-spos” field.0 and Flash Media Server 3 and later. This event occurs if an Authorization plug-in is present to handle the event. Also fires when NetStream.115.inBufferSeek=false. The seek position when the client seeks within the buffer when NetStream. Smart pause requires Flash Player 9. pause unpause client-pause stream stream stream client-unpause seek stream stream client-seek stream stop record recordstop start-transmit stream stream stream stream stop-transmit stream server-start server-stop vhost-start vhost-stop app-start app-stop auth-connect server server vhost vhost application application authorization auth-play authorization auth-publish authorization auth-seek authorization . This event occurs if an Authorization plug-in is present to handle the event. This command asks the server to suspend transmission until the client sends a “startTransmit” event because there is enough data in the buffer.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Client publishes a live stream. An application instance has stopped. Client stops recording a stream. The stream position is logged in the “c-spos” field. Use the x-sid field (stream id) with the c-client-id field to find the corresponding play event. Client plays a stream. This command asks the server to transmit more data because the buffer is running low. This type of pause is called a “smart pause”. Client resumes playing stream. This event occurs if an Authorization plug-in is present to handle the event. Server has stopped. Client pauses stream. A virtual host has started. A virtual host has stopped An application instance has started.0. This event occurs if an Authorization plug-in is present to handle the event. Client seeks in a stream and NetStream. Client stops playing or publishing a stream.5 CONFIGURATION AND ADMINISTRATION GUIDE 58 Monitoring and Managing Log Files Event play-continue Category stream Description A checkpoint event that provides updates of a corresponding play event at intervals.

This applies to the tz. IP address or addresses of the server. Event-dependent context information. Client begins recording a stream. Client IP address. The double quotation marks surrounding the data are not part of the data. Date of the event. the data is wrapped in double quotation marks. Application names. Event category. s-uri. The following formats apply to the fields in the table below: For date: YYYY-MM-DD For time: hh:mm:ss For time zone: string such as “UTC. x-ctx. c-referrer. For a complete description of the x-status codes and descriptions. The publisher codec changes during a live event. This event occurs if an Authorization plug-in is present to handle the event.” “Pacific Daylight Time. For a session. Time the event occurred. Adaptor name. x-status c-ip . Virtual host name. For a stream. Logs data to the “x-codec-type” and “x-codec” fields.5 CONFIGURATION AND ADMINISTRATION GUIDE 59 Monitoring and Managing Log Files Event filenametransform Category authorization Description A virtual stream path has been mapped to a physical location. Time zone information. see “Fields in diagnostic logs” on page 64. sc-bytes. this value is the number of seconds the client has been connected. x-vhost. c-user-agent. Duration of a stream or session event.Last updated 3/2/2010 FLASH MEDIA SERVER 3. this value is the number of seconds the stream has played. This event occurs if an Authorization plug-in is present to handle the event. CPU load. and xsname fields.” or “Pacific Standard Time” Field x-event x-category date time tz x-ctx s-ip x-pid x-cpu-load x-mem-load x-adaptor x-vhost x-app x-appinst x-duration Description Type of event. cs-bytes. Memory usage (as reported by the getServerStats() method). Server process ID. x-adaptor. Application instance name. but are present for better parsing of the data. auth-record authorization codecchange authorization Fields in access logs Note: When the data for this field contains a space or delimiter. This event occurs if an Authorization plug-in is present to handle the event.

in milliseconds. . Stream size. or MP4). Stream type (FLV. sc-stream-bytes This field shows the number of bytes transferred from the server to the client per stream. Stream position. This field shows the number of bytes transferred from the client to the server per stream. Query portion of the stream URI specified in play or publish. such as MP3 files. MP3. Client ID. subtract cs-bytes in the “connect” event from cs-bytes in the “disconnect” event. sc-bytes This field shows the number of bytes transferred from the server to the client. To calculate the bandwidth usage per session. The query portion of s-uri. Full path of the file representing the x-sname stream. To calculate the bandwidth usage per session. Same as x-sname-query. The value of sc-stream-bytes can be greater than x-file-size after streaming files not encoded in FLV format. URI of the referrer.Last updated 3/2/2010 FLASH MEDIA SERVER 3. This information can be used to bill customers per session. To calculate the bandwidth usage per stream. The stem portion of the s-uri field. in seconds. such as Flash Player Group: Connection between an edge and an origin server Virtual: Client connection that goes through an edge server. x-service-name Name of the service providing the connection (only applicable to certain connection types). subtract sc-stream-bytes in the “play” event from sc-stream-bytes in the “stop” event. Stream length. subtract cs-stream-bytes in the “publish” event from csstream-bytes in the “unpublish” event. in bytes. Note: The value of sc-stream-bytes is not necessarily the same as the value of the QoS ByteCount property. This field shows the number of bytes transferred from the client to the server. subtract sc-bytes in the “connect” event by sc-bytes in the “disconnect” event c-connect-type Type of connection received by the server: Normal: Connection from a client. using the group connection between the servers for transmission x-sname x-sname-query x-suri-query x-suri-stem x-suri x-file-name x-file-ext x-file-size x-file-length x-spos cs-stream-bytes Stream name. This information can be used to bill customers per session.5 CONFIGURATION AND ADMINISTRATION GUIDE 60 Monitoring and Managing Log Files Field c-proto s-uri cs-uri-stem cs-uri-query c-referrer c-user-agent c-client-id cs-bytes Description Connection protocol. User agent. This is a composite field: cs-uri-stem + x-sname + x-file-ext + x-sname-query. This is a composite field: cs-uri-stem + x-sname + x-file-ext. To calculate the bandwidth usage per stream. URI of the Flash Media Server application.

This field is only available in authorization (auth-) events. status_OK record.log file. stop play.log file.log file. Connection rejected by Authorization plug-in or connection rejected due to invalid URI.5 CONFIGURATION AND ADMINISTRATION GUIDE 61 Monitoring and Managing Log Files Field x-sc-qos-bytes x-comment x-sid x-trans-sname x-trans-sname-query x-trans-file-ext x-plugin x-page-url x-smax-rec-size x-smax-rec-duration x-trans-mode x-offset c-spos x-eid Description Number of bytes sent to the client for quality of service. The transition mode sent by the client in the NetStream.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The URL of the web page in which the client SWF file is embedded. Bad request. Successful. The query stream portion of the stream name for the stream that the server transitions from. record stop. play status_transition status_unavailable status_bad_request 200 210 302 400 A transition between streams has occurred. invalid parameter or client connected to server using an unknown protocol. The name of the stream that the server transitions from (the original stream). When a stream is reconnected. The maximum duration of a recorded stream. Codec type of the frame retrieved in the Authorization plug-in’s E_CODEC event. connect.log file. publish. Application currently unavailable. publish status_unauthorized 401 connect status_forbidden 403 . The file extension portion of the stream name for the stream that the server transitions from. Client disconnected due to admin command. This event is visible only in the auth. This event is visible only in the auth. Connection rejected by application script or access denied by application. Comments. This event is visible only in the auth. This field is empty in the access. The client stream position when a “client-pause” or “client-seek” event is logged. An event ID received by Authorization plug-in. Field connect pending disconnect disconnect Symbol status_continue status_admin_command status_shutdown Status Code 100 102 103 Description Waiting for the application to authenticate. Name of the plug-in. x-codec-type x-codec Event status codes in access logs The Event status codes are based on HTTP response codes. The ID of a stream. unpublish. This field is empty in the access. Client disconnected due to server shutdown (or application unloaded). play. connect. Codec value of the “x-codec-type” retrieved in the Authorization plug-in’s E_CODEC_CHANGE event. The maximum file size of a recorded stream.log file.play2() call.log file. stop connect connect. This field is empty in the access. This ID is unique for the client session but not across sessions. the offset value indicates where to resume streaming. play. publish.

Message queue too large. Unable to process unknown data type. Error handling message. License limit exceeded. Client connection invalid. Expected response not provided when issued an admin command. Unable to obtain ping response or client states not connected. SWF verification timeout. SWF verification failure. Client does not have privilege to broadcast. play connect server_internal_error bad_gateway 500 502 . Unsupported media type. unable to write data. License to receive screen sharing video failed. Client is not connected or client terminated. Bad gateway. Client disconnected due to incompatibility with object encoding.5 CONFIGURATION AND ADMINISTRATION GUIDE 62 Monitoring and Managing Log Files Field connect. Close downstream connection. disconnect the client. Resource limit exceeded or stream is already being published. Stream stopped because client disconnected. Expected response not provided when command was issued. connect play. Upstream connection closed. Can also mean that a change has been made by the Authorization plug-in. closed due to inactive or idle status. Unable to process message received when client connection was in pending or closed state. publish disconnect connect disconnect disconnect disconnect connect status_lic_limit_exceeded unsupported_type data_exceeded chunkstream_error cannot_broadcast cannot_screenshare remote_link_closed process_msg_failed 413 415 416 417 418 419 420 422 disconnect disconnect process_msg_exception process_remote_msg_failed 423 424 disconnect process_admin_msg_failed 425 disconnect process_rtmp_S2S_msg_failed 426 disconnect write_error 427 disconnect invalid_session 428 disconnect gc_client 429 disconnect disconnect remote_onstop remote_on_client_disconnect 430 431 disconnect gc_idle_client 432 disconnect disconnect disconnect swf_hash_fail swf_hash_timeout encoding_mismatch_error 433 434 435 disconnect. Flash Media Server autoclose feature automatically closed the connection.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Upstream connection closed because the last client disconnected. play play connect. Expected response not provided when command issued. Server internal error. publish Symbol object_not_found client_disconnect status_conflict Status Code 404 408 409 Description Application or stream not found.

Bad application data. The most recent logs can be found in application. The default application log is application. Time of the event.log.5 CONFIGURATION AND ADMINISTRATION GUIDE 63 Monitoring and Managing Log Files Field connect Symbol service_unavailable Status Code 503 Description Service unavailable. An unknown exception is thrown from the JS engine. Application does not allow debug connections. located in the subdirectory within the Flash Media Server logs directory. The “xx” in the filename is a two-digit number representing the history of the application log.Last updated 3/2/2010 FLASH MEDIA SERVER 3.log. Network connection was closed or reused. by default. .00. for instance. to create one application log per application instance.xx. ~fcstreamjshook() clean up. too many connections pending for authorization by access module. This log is used primarily for debugging (logging uncommon events that occur in an application instance). disconnect disconnect disconnect js_disconnect js_close_previous_client js_exception 600 601 602 disconnect disconnect play js_chunkstream_error js_debug_forbidden js_gc_object 603 604 605 Application logs Application log file The application log records information about activities in application instances. Application disconnect. The application folder is located in the matching virtual host directory. Flash Media Server is configured. Fields in application logs Field date time Event(s) All All Description Date of the event.

xx.log. see “Diagnostic Log Messages” on page 196. admin. The default diagnostic logs are master.log. The “xx” in the filename is a two-digit number representing the version of the log. edge. The last four characters represent message ID. category. Diagnostic logs Diagnostic log file The diagnostic log records information about Flash Media Server operations (this is in addition to the information logged by the operating system). All message IDs are listed in “Diagnostic Log Messages” on page 196. Time at which event occurred. This log is used primarily for debugging (logging uncommon events that occur in Flash Media Server processes). Status code: The code is a 10-character string that represents the severity.xx. x-ctx All Event-dependent context information. The first three characters represent severity. by default.log. core. All categories are listed in “Status categories in diagnostic logs” on page 65. and httpcache. All the diagnostic logs are located in the Flash Media Server logs directory.Last updated 3/2/2010 FLASH MEDIA SERVER 3.log.xx. and message ID.log. .xx. as follows: (w) = warning (e) = error (i) = information (d) = debug (s) = trace from server-side script (_) = unknown The next three characters represent category.xx.5 CONFIGURATION AND ADMINISTRATION GUIDE 64 Monitoring and Managing Log Files Field x-pid x-status Event(s) All All Description Server process ID. Flash Media Server is configured. Fields in diagnostic logs Field date time Event(s) All All Description Date on which the event occurred. For a list of messages that appear in the diagnostic log files. to create a diagnostic log for each type of process.

and message ID. Status code: The code is a 10-character string that represents the severity. All message IDs are listed in “Diagnostic Log Messages” on page 196. x-stx All Event-dependent context information. The last four characters represent message ID. as follows: (w) = warning (e) = error (i) = information (d) = debug (s) = trace from server-side script (_) = unknown The next three characters represent category.5 CONFIGURATION AND ADMINISTRATION GUIDE 65 Monitoring and Managing Log Files Field x-pid x-status Event(s) All All Description Server process ID. Status categories in diagnostic logs Category 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 Description TCService TCServer Presence Storage Stream SMTP Adaptor JavaScript TCApplication TCConnector Admin SharedObject Configuration VirtualHost SSL . All categories are listed in “Status categories in diagnostic logs” on page 65.Last updated 3/2/2010 FLASH MEDIA SERVER 3. category. The first three characters represent severity.

or restart the server from the Services window 1 Choose Start > Control Panel > Administrative Tools > Services. stop. Start and stop the server in Linux Start.5 • Choose Start > All Programs > Adobe > Flash Media Server 3. or Restart. .Last updated 3/2/2010 66 Chapter 5: Administering the server Perform regular administrative tasks to keep the server running smoothly. Start. • Select Flash Media Administration Server from the Services list and click Stop.5 > Stop Flash Media Administration Server 3.5 Stop the server from the Start menu ❖ Do one of the following: • Choose Start > All Programs > Adobe > Flash Media Server 3.5 > Stop Flash Media Server 3.5 Start. or restart Flash Media Server 1 Log in as a root user.5 > Start Flash Media Server 3. 2 Change to the directory where the server is installed. or restart the Administration Server 1 Log in as a root user. Start the server from the Start menu ❖ Do one of the following: • Choose Start > All Programs > Adobe > Flash Media Server 3./fmsmgr server start . Start and stop the server Start and stop the server in Windows Use one of the following methods to shut down or restart the server. 2 Do one of the following: • Select Flash Media Server (FMS) from the Services list and click Stop. stop.5 • Choose Start > All Programs > Adobe > Flash Media Server 3.5 > Start Flash Media Administration Server 3. stop. 3 Open a shell window and type one of the following: • • • ./fmsmgr server restart Start. Start./fmsmgr server stop . or Restart.

C shell. Check server health FMSCheck is a command line utility program that can be used to diagnose and determine server status. or restart the Administration Server using the command line 1 * cd /<the directory where FMS is installed>. (The following steps are accurate if you are working directly on the server. bash./server [start | stop | restart]. The Event Viewer displays a list of events that the server generates.) 1 From the Windows Start menu. it does the following: • Checks the connection to any instance of an application • Checks all active instances of the server by connecting to those applications • Can publish and play a stream • Can play the available server-side stream for an application Note: Currently. FMSCheck only supports RTMP connections and does not check for shared objects./fmsmgr adminserver start . A small video file for testing is included. . Checking server status View server events in the Windows Event Viewer The Windows Event Viewer can be used for tracking Flash Media Server activity and debugging server applications. use Event Viewer to open a remote connection to the server. As a command line tool./fmsmgr adminserver stop ./adminserver [start | stop | restart]. The tool is available for both Windows and Linux using different executable files. or Python. FMSCheck is completely scriptable using the language of your choice. 2 Enter . When the tool connects to Flash Media Server. 2 Enter . The Users. and which fmscore processes are not responding. stop. FMSCheck provides information about whether the server is running or not.xml file must be configured to accept a connection from this tool (this configuration is required to use --allapps and its dependent commands). select Settings > Control Panel > Administrative Tools > Event Viewer. such as Cscript. stop. 3 Double-click an event generated by Flash Media Server to view details. or restart Flash Media Server using the command line 1 * cd /<the directory where FMS is installed>.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 67 Administering the server 2 Change to the directory where the server is installed. 3 Open a shell window and type one of the following: • • • . what the response time is. 2 Select the Application panel. To view the events from another Windows machine. Start./fmsmgr adminserver restart Start.

This command is used with --allapps. the administrator must use the --auser.flv --publish output 10 --parallel [<max>] Allows the program to play multiple applications at the same time. Example: --publish foo -1 --pubfile <file> Specifies a filename. and -ahostport options in order to log in to the Administration Server.log Instructs the program to play video files. The duration parameter is required. fmscheck -v . a result cannot be provided. Options are start and duration. the name of the output file to be created on server side. If the program does not receive a response from the server within this interval. The administrator must configure Users. to run 10 tests in parallel. The default value is 1935.xml to accept connections from this program. Example: rtmp://host/app/inst?foo=abcd --query <" "> --timeout <sec> Specifies a timeout value. However. Both record and append are optional. verify that the timeout value is adequate. You cannot give the play and publish commands at the same time. The default value of duration is 1 second. use the following: --parallel 10 --stagger <sec> Inserts a pause between tests. only a positive number. run test. Indicate the maximum number of applications that can be run in parallel by specifying a value for max. The default value of start is any. This command can take time to finish. an error is returned. Displays Help for using FMSCheck. If this option is not specified. Administrator must specify the application. Values for start and duration must be in positive numbers or 0 and represent the number of seconds. Prints a version string. Example: --logfile output. running all of them in parallel may not be desirable. Example: --pubfile input. Running parallel without specifying max tests every application in parallel. This command must be used with --publish. tells the program where to connect the server. The value of <sec> is in seconds. or all is allowed. zero. Allows the program to output a response to a file. You can specify all to play the entire file. Specify the name of the input video file residing on the client side. and so on). the existing file is overwritten. such as authentication. This command must be used along with --pubfile. it is automatically played to verify the success of the publish operation. in seconds. For example. tests are run on each application serially (connect to the first application. If you specify a very long stagger time (longer than the duration of the test). Example: --play foo 10 5 --allapps --help --logfile <file> --play <name> [start [duration]] --publish <name> <duration> [record|append] Publishes files to the server.5 CONFIGURATION AND ADMINISTRATION GUIDE 68 Administering the server FMSCheck commands and options Option --host <hostname> --port <number> --app <app> Description Required. run test. then you are effectively running in serial mode. Example: --port 1935 Allows the program to connect to an application. After the file is published. If there is more than one application. if there is a large number of applications. and the duration. and the default value is 1 second. connect to the second application. If neither is specified.Last updated 3/2/2010 FLASH MEDIA SERVER 3. --apswd. Example: --app app1/inst1 Queries the Administration Server for active instances and makes a connection to each active instance. the default behavior is to record. In this case. If the file already exists and record is used. This command is used along with --parallel. Example: --stagger 2 Allows you to input your own string for special purposes. which plays the file from the beginning. Example: --host localhost Port number is optional.

The FLVCheck tool can be used to analyze FLV files before they are deployed on Flash Media Server.exe --host localhost --app app1 --pubfile foo. The tool verifies that metadata is readable. .exe.Last updated 3/2/2010 FLASH MEDIA SERVER 3.exe --host localhost --allapps --auser admin --apswd admin --parallel 10 -stagger 2 --timeout 100 logfile output.txt * fmscheck. Common problems include bad timestamps in the FLV file. Example: --apswd admin Specifies the Administration Server port number. The tool can then merge the server metadata with the data present in the file. At least one application failed. and corrupted audio and video. but some of the tools create files that do not comply with the FLV standard. Connection failed. Note: The FLVCheck tool does not correct FLV file content corruption. Invalid command line argument. Checking video files Checking FLV files created or modified with third-party tools Third-party tools are available to create and modify FLV files. Code 0 -1 -2 -3 -4 -5 -6 -7 Status Success. the tool can also add or update metadata to reflect file duration correctly.exe --host localhost --app app1 --play foo 0 10 --logfile output.exe --host localhost --app app1 --logfile output. The tool supports unicode filenames. Example: --ahostport 1111 Usage examples for Windows: • • • • * fmscheck.txt All of the Windows examples can be adapted to Linux by using * . Play failed. the default port is 1111./fmscheck instead of * fmscheck. Operation timed out. Example: --auser admin Specifies a password for the Administration Server. and checks that the FLV file is seekable by Flash Media Server. FMSCheck return codes Return codes for the FMSCheck tool report the status after the tool has been run.txt * fmscheck. The tool does fix metadata by scanning the Duration and Can Seek To End metadata fields.flv --publish bar 10 --logfile output. bad message headers. If the port number is not specified in the command line. Publish failed. specifies an accurate duration.txt * fmscheck. File not found. In addition. invalid onMetaData messages.5 CONFIGURATION AND ADMINISTRATION GUIDE 69 Administering the server Option --auser <username> --apswd <password> --ahostport <port> Description Specifies a user name for the Administration Server user.

-v [--verbose] -V [ --version ] -n [ --nobanner ] -h [ --help ] -d [ --duration ] -q [ --quiet ] Specifies that only the status code.. The --help option overrides this option. Fix a stall in video playback (FLV only).5 CONFIGURATION AND ADMINISTRATION GUIDE 70 Administering the server Checking other video files Flash Media Server supports playback and recording of H. (FLV files only) If a metadata tag is corrupted. (Avoid using the “\\xd3 character. (The default is 2 seconds.264-encoded video and HE-AAC-encoded audio within an MPEG-4–based container format. If the margin has not been exceeded. creates a new copy of the original FLV file in the same directory as the original. try the “/” character instead. a backup file is not created. To get the exact duration.flv The following table describes the command line options available. Relative paths may be used.> For example. 2 Use the following syntax to run the FLVCheck tool: flvcheck [-option] <file . Option -f [ --file ] file . specify -d 0. in seconds. nothing will be logged.. Specifies the margin of error. to check two files: flvcheck -f abc.) Only the Duration and Can Seek To End metadata fields are corrected. Note: The FLVCheck tool does not correct corrupted H.Last updated 3/2/2010 FLASH MEDIA SERVER 3. be returned.. Displays an example and information about command-line parameters. with corrected metadata..) When validating metadata. Prints version information. use the FLVCheck tool to verify that the server can play back your files. 1 Open your operating system’s command prompt and change directories to RootInstall/tools. not the text output. the absolute difference between metadata_duration and actual_duration is calculated and compared against the margin specified in this command. Display warnings. the server logs a warning that the metadata duration is incorrect.. Turns off header. Treat warnings as errors. (If the file contains no errors. Check a video file with the FLVCheck tool The FLVCheck tool is a command line program./test/123. -w [ --warnings] -W [--warnings_as_errors] -s [ --fixvideostall ] -u [ --usage ] -m [ --fixmeta ] . the executable is named flvcheck. All MP4 files and Adobe F4V files are part of the supported subset. A subset of the MPEG-4 standards are supported.264-encoded files or make any other fixes to MP4/F4V files. that FLVCheck reports.flv . For MPEG-4–based container formats. Provides a description of options and an example. Description Specifies the path to the video file(s) being checked. If the margin is exceeded.) Sets the verbose flag.

an invalid command-line parameter was specified. If a return code of -1 is returned. a positive number indicating the total number of invalid files found is returned. Found backward timestamp. Cannot open file. Try the following: a Use the -m option to try to fix the metadata in the file: flvcheck -m <file> [-quiet] [-help] b Use the -d option to change the duration field margin of error. . -14 MP4 File does not contain any valid tracks. This error could occur if the MP4 file contains audio or video encoded with unsupported codecs. and FileName. Unrecognized message type. This error occurs if the MP4 file is empty. the status code returned is 0. The duration field in the metadata may be inaccurate by a few seconds. If there are one or more errors. Invalid FLV data offset. 4 (FLV files only) If an error is returned from an FLV file due to a metadata error. ErrorNumber. For example.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Maximum allowed is 64. indicating that the encoding of part or all of the file is not compatible with the codecs that are supported.5 CONFIGURATION AND ADMINISTRATION GUIDE 71 Administering the server 3 If the FLVCheck tool finds no errors in the FLV file. types of errors. the error is logged to the stdout file in the following format: Date. Invalid FLV message footer. File not found. -6 General Cannot create corrected file. Errors and warnings are logged in a log file (stdout). Error numbers -2 -3 -4 -5 Error type General General General General Error messages Invalid file system path specified. -15 MP4 Too many tracks. Unparsable data message. ErrorMessage. but the tool cannot create a file with corrected metadata. Time. and messages are as follows. FLVCheck errors If an error is found. you can use the tool to try to correct the problem.flv -d 5 would allow the metadata duration to be inaccurate +/. File does not contain a movie box.5 seconds. Flash Media Server cannot read the file. This error occurs if you run the tool with the -m option set. File read error. Other types of errors cannot be fixed using the FLVCheck tool. MP4/F4V files cannot be fixed using the FLVCheck tool. The possible error numbers. flvcheck -f abc. -7 -8 -9 -10 -11 -12 -13 FLV FLV FLV FLV FLV FLV MP4 Invalid FLV signature.

Track has unsupported sample type. Ignoring. Max is 64. Unsupported DRM scheme. FLVCheck warnings Generally. Invalid sample size. and File Name. warnings are informative and are not fatal errors. . This warning indicates that a track has an invalid video codec. Error reading MP4 tables.5 CONFIGURATION AND ADMINISTRATION GUIDE 72 Administering the server Error numbers -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 Error type MP4 MP4 MP4 MP4 MP4 MP4 MP4 MP4 MP4 MP4 General MP4 MP4 MP4 MP4 Error messages Only one sample type allowed per track. Found duplicate audio track. Warning Message. Invalid box version. Flash Media Server cannot play back the track. Ignoring.. File contains unexpected movie fragments. Found incomplete track.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Box is too large. Too many tag boxes. but you may experience problems with playback. Flash Media Server will ignore the error that caused the warning and continue to load and play back the video or audio file. Warning number -100 -101 -102 -103 -104 -105 -106 -107 Warning type General FLV MP4 MP4 MP4 MP4 MP4 MP4 Message Metadata duration is missing or is incorrect. File appears to be FLV with wrong extension. Time. Invalid number of data entries in box. canSeekToEnd is false. Unrecognized box.. Found duplicate video track. Warning Number. Ignoring. -108 MP4 Invalid video codec. Truncated box. Duplicate box. Found duplicate data track.... Warnings are logged to the stdout file in the following format: Date.. Invalid chapter time. File contains out-of-order movie fragments. Flash Media Server ignores (will not play back) tracks that are encoded with unsupported codecs. Invalid movie time scale.

Audio messages found but audio flag not set.5 CONFIGURATION AND ADMINISTRATION GUIDE 73 Administering the server Warning number -109 Warning type MP4 Message Invalid audio codec. 1 Create a cache. Track contains unsupported sample flags. Invalid Track Extends Box. 5 Replicate this procedure on each edge server. Bad NellyMoser Frequency. you must delete unused files to manage disk usage. Sample(s) skipped. The directory structure remains and any files currently locked by the edge server are not deleted. Track contains unsupported edit list. Will only be partially playable. Edge servers update the timestamp of a file each time the file is used.bat as the new file to run.bat file to empty the cache directory.Last updated 3/2/2010 FLASH MEDIA SERVER 3. -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 FLV MP4 MP4 FLV FLV FLV FLV MP4 MP4 FLV MP4 MP4 MP4 Video may appear stalled due to lack of audio data. File is truncated. Clearing the edge server cache Deleting files from the edge server cache Edge servers do not delete content automatically. 4 Select cache. This warning indicates that a track has an invalid audio codec. Audio flag set but no audio messages found.* 2 Run the cache. 3 Select Control Panel > Scheduled Tasks > Add Scheduled Task. Video messages found but video flag not set. Missing FLV metadata. File has unsupported metadata format. The entry in the cache. Flash Media Server cannot play back the track. . Box has extraneous bytes at end. Video flag set but no video messages found. this is expected behavior.bat file and verify that it deletes files in the cache directory.bat file has the following syntax: del /Q /S <cache_directory>\*. You can use the timestamp to determine when a cached file was used. Manage the edge server cache in Windows You can create a weekly scheduled task to clear the edge server cache.

2 Verify that the script is executable by running the following command: $ chmod 700 cache.Last updated 3/2/2010 FLASH MEDIA SERVER 3. fmsmgr remove fmsmgr add <service_name> <install_dir> Add a Flash Media Server service to the fmsmgr tables. Note: You can add any additional file types to the script. use the Administration Console.sh to run. you still need to manually remove the installed files. (For details about the cron utility. with additional information about services that are currently running. stops. Starts.flv" -exec rm-f{}\. 4 Use the cron utility to schedule cache. Removes the Flash Media Server service from the fmsmgr tables. Sets the Flash Media Administration service to start manually. including Administration services. The cache. stops. If <service_name> already appears in the fmsmgr tables. see the documentation for your Linux distribution.) Managing the server on Linux Use the fmsmgr utility to perform basic management tasks for Flash Media Server running on Linux systems. Syntax fmsmgr server <service_name> <cmd> For commands that use the <service_name> parameter.sh 3 Run cache. If you remove a server service. the old entry is updated with the new one. . such as adding users or checking the status of applications.sh to verify that it deletes the correct files in the cache directory.mp3" -exec rm-f{}\. The server name is fms by default. Note: Running multiple Flash Media Server services concurrently is not supported. such as starting and stopping the server and services. Command fmsmgr adminserver start|stop|restart fmsmgr server <service_name> start|stop|restart fmsmgr clearautostart fmsmgr list Description Starts. If <service_name> does not exist. or restarts a Flash Media Server service. find <cache_directory> -name "*.mp4" -exec rm-f{}\. You do not need to be a root user to use the Administration Console. Lists all the services installed. the corresponding Administration service is also removed. find <cache_directory> -name "*. The <install_dir> parameter is the absolute directory path where you installed Flash Media Server. the command is performed on the name of the server you selected during installation. A root user must use the fmsmgr utility to start the Flash Media Administration Server before anyone can use the Administration Console.sh to empty the cache directory. Warning: Use this command only if you want to uninstall the server service. or restarts Flash Media Administration Server. You must be a root user to use the fmsmgr utility. For tasks not listed in the following table. the command fails.sh script has the following syntax: find <cache_directory> -name "*. if you do not specify <service_name>.5 CONFIGURATION AND ADMINISTRATION GUIDE 74 Administering the server Manage the edge server cache in Linux 1 Create a shell script named cache.

The Administration service name is the same as the Flash Media Server service name. Sets the Flash Media Administration service to start manually.5 CONFIGURATION AND ADMINISTRATION GUIDE 75 Administering the server Command fmsmgr setadmin <service_name> Description Changes the default Administration service. Sets the Flash Media Server service to start automatically when the system is started. Only one Administration service can be running at a time.Last updated 3/2/2010 FLASH MEDIA SERVER 3. fmsmgr getadmin fmsmgr setautostart<service_name> fmsmgr clearautostart <service_name> fmsmgr suggestname Gets the name of the default Administration service. Any installed Administration service can be used to administer one or more servers. Suggests a service name that does not already appear in the fmsmgr tables. .

• This document assumes that you have not changed the default port number (1111) for the Administration Server. the administrator JLee would enter the following information for the administrator user name parameter in the method call: _secondAdaptor_/JLee. it is assumed that you want to perform the command on the virtual host to which you connected when you logged in to Flash Media Server.xml file in the RootInstall/conf folder. 3 Open the Users. For example.Allow</Deny> </HTTPCommands> </AdminServer> Note: There are additional XML elements in the Users. 1 Open the fms. • If you do not specify an optional parameter.changePswd</Allow> <Deny>All</Deny> <Order>Deny. • By default. administrators are logged in to the “_defaultRoot_” adaptor. a default value may be used depending on the method. the following code allows the ping() and changePswd() methods: <AdminServer> <HTTPCommands> <Enable>${USERS.Last updated 3/2/2010 76 Chapter 6: Using the Administration API Working with the Administration API About the Administration API Use the Administration API to monitor. if you do not specify a virtual host in the scope parameter. Here are a few important tips for working with the Administration API: • Both Adobe Flash Media Server and Flash Media Administration Server must be running.ini file in the RootInstall/conf folder. 5 Save the file and restart Flash Media Administration Server. Set permissions for Administration API method calls over HTTP Note: You do not need to set permissions to call methods over RTMP. For example. enter method names in a comma-delimited list to allow HTTP requests to execute Administration API calls. . For example. When logging in to a virtual host not on the default adaptor.HTTPCOMMAND_ALLOW parameter is set to true. For more information. 2 Make sure that the USERS.HTTPCOMMAND_ALLOW}/Enable> <Allow>ping.xml file that give you finer control over permissions. manage. when logging in (over RTMP using NetConnection) to a virtual host on the adaptor _secondAdaptor_. and configure the server from an Adobe Flash Player or Adobe AIR client over RTMP or RTMPE or from a web client over HTTP. 4 In the <Allow> element. The API is described in detail in Adobe Flash Media Server Administration API Reference. The Flash Media Server Administration Console was built using the Administration API. virtual-host administrators must specify the name of the adaptor. use your valid port number in all examples. see “XML configuration files reference” on page 80. if you have.

{foo:123.2.3.ini file.com" • Strings are passed as literals surrounded by quotation marks.20.myCompany. Parameters passed in an HTTP request must adhere to the following formatting rules: • Name the parameters in the string.03 -45 Note: When a number is used for an application name.40] • Objects are passed as inline object literals.5 CONFIGURATION AND ADMINISTRATION GUIDE 77 Using the Administration API Call an Administration API method over HTTP 1 Verify that Flash Media Administration Server is running."hi"] [10. "Hello World" 'String2' The only exceptions are the auser and apswd parameters.[31. • Numbers are passed as either integer or floating-point literals.0" encoding="utf-8" ?> <result> <level>status</level> <code>NetConnection. 3 The server sends the XML results back to the browser: <?xml version="1.Last updated 3/2/2010 FLASH MEDIA SERVER 3.32]. which are located in the fms. 245 1.bar:456} . Note: You can construct an Administration API call from any language that can send HTTP requests. You can use either single quotation marks (') or double quotation marks (").Success</code> <timestamp>10/3/2007 05:31:01 PM</timestamp> </result> Constructing an HTTP request string Many Administration APIs expect one or more parameters in addition to auser and apswd. [1. This example uses a web browser because it’s the simplest client and good for testing purposes. which should be passed without quotation marks. 2 Open a browser window and enter the following in the address bar: http://localhost:1111/admin/ping?auser=username&apswd=password If the web browser is on a different computer than Flash Media Server. For example.Call.4] ['abcd'. the following code calls the addAdmin() method: http://localhost:1111/admin/addAdmin?auser=adminname&apswd=adminpassword&username="joe"&pa ssword="pass123"&vhost="_defaultRoot_/foo. Substitute your administrator user name and password.34. use the server address instead of localhost. • Arrays are passed as comma-separated values enclosed in square brackets. the application name must be included within quotation marks (" ") for methods such as reloadApp() and unload App() to work properly.

and timestamp properties. appName. and vod is the name of the application instance from which to retrieve statistics. and an administrator password. new onGetAppStats(). onGetAppStats(): ncAdmin.call("getAppStats". new onGetAppStats(). "MHill". 1 In the client application. but change the protocol in the example NetConnection. passing in three parameters: the URI of the Administration Server. Only valid administrators. 2 Call the NetConnection. ncAdmin. specify the virtual host’s domain name or IP address as part of the URI— for example. a response object (if needed) and any parameters (if needed): ncAdmin.myVhost. in this example. All information objects have level. rtmp://www.call() method and pass it the Administration API method.com/admin:1111.Last updated 3/2/2010 FLASH MEDIA SERVER 3.Call. which typically provide information about errors.text+ " returned:" + newline. Some information objects have a data property (containing return data. an administrator user name. Create your first application This section contains the code for a simple Flash application that calls the getAppStats() method. follow the instructions below. . can connect to the server.. Note: To call the Administration API over RTMPE.text = "Info for "+appName.. . "635xjh27").onResult = function(info){ if (info. The following code creates a NetConnection for the administrator MHill with password 635xjh27 to the server on localhost: ncAdmin = new NetConnection(). The following sample is built in Flash. often in an object or array) and description and details properties.connect("rtmp://localhost:1111/admin". outputBox).5 CONFIGURATION AND ADMINISTRATION GUIDE 78 Using the Administration API {user:"Joe".xml configuration file. The getAppStats() method returns performance data for an application running on the server. 3 Define a function to handle the information object returned by the Administration API method. you need a Flash Player or AIR client.description. function onGetAppStats(){ this.text = "Call failed: " + info.text). printObj(info.connect() call to RTMPE. } else { outputBox.ssn:"123-45-6789"} Call Administration API methods over RTMP or RTMPE To call the Administration API over RTMP or RTMPE.call("getAppStats". create a NetConnection to Flash Media Administration Server. as defined in the Users.code != "NetConnection. Note: If you want to connect to a virtual host. the response object onGetAppStats() captures the result of the call.Success"){ outputBox. To call Administration APIs over RTMP. code. you need a Flash Player or AIR client. } } } The data is returned to the handler function in an information object. "vod").

} } } button_btn.5 CONFIGURATION AND ADMINISTRATION GUIDE 79 Using the Administration API Note: You can call Administration APIs from applications written in ActionScript 1. if (typeof (obj[prop]) == "object") { // recursively call printObj printObj(obj[prop]. dynamic text field called outputBox • A scroll component attached to the outputBox text field Note: Since this is a Flash Media Server application. } 3 Before running this sample application. } }. create an application with the following elements: • An input text field named appName • A button called button_btn • A multiline. . for example. 5 Run the sample Flash application and enter the name of the application you started in step 3 in the input text field. destination){ for (var prop in obj) { destination. outputBox). appName. ncAdmin. you must create an application directory with the application name in the RootInstall\applications directory.onResult = function(info){ if (info. new onGetAppStats(). printObj(info. destination.text = "Info for "+appName.0.Success"){ outputBox. destination).text += prop + " = " + obj[prop] + newline.Last updated 3/2/2010 FLASH MEDIA SERVER 3.code != "NetConnection. "getAppStats" **/ function doGetAppStats() { function onGetAppStats(){ this.text+ " returned:" + newline. } // Calls the getAppStats() API on the name of application // in the input text field // places the response in the onGetAppStats funtion ncAdmin. or ActionScript 3.onRelease = function(){ doGetAppStats(). 2 Enter the following code on frame 1 of a Flash file: /** Establishes the connection to Flash Media Server **/ ncAdmin = new NetConnection(). // Replace admin_name and admin_pass with your // administrator name and password.0. } else { outputBox.0."admin_pass").Call.text = "Call failed: " + info.connect("rtmp://localhost:1111/admin"."admin_name".text += "\t".description. /** Makes the API call.call("getAppStats". } function printObj(obj. ActionScript 2. start another Flash Media Server application.text). 1 In Flash. 4 Open the Administration Console to verify that the application you started in step 3 is running.

To see the element structure and default values in the Adaptor. 10. Allow A comma-delimited list of host names.xml file. the communications ports the adaptor binds to.133.60.1. edit the elements in its Adaptor. 10. Each adaptor directory must contain an Adaptor. It determines the number of threads that can be used by the adaptor. You can also implement SSL with the Adaptor.yourcompany. The name of the directory is the name of the adaptor. adobe. More Help topics “Editing configuration files” on page 9 Adaptor. These elements are marked with an Important note. domain names.com. Example <Allow>foo. if you want to use different digital certificates for different adaptors. see the RootInstall/conf/_defaultRoot_/Adaptor.xml file. the default adaptor included with the server at installation is named _defaultRoot_ and its directory is found in the conf/ directory. To change an adaptor’s settings.xml file The Adaptor. and the IP addresses or domains from which the adaptor can accept connections. Each adaptor has its own directory inside the server’s conf directory. For example. Order . Adaptor Root element.xml file. and/or full or partial IP addresses from which clients can connect to the server.com.60</Allow> See also Deny.xml file.xml file is the configuration file for individual network adaptors.xml file. Contains all the elements in the Adaptor. Important: Some XML elements should not be configured without contacting Adobe Support.Last updated 3/2/2010 80 Chapter 7: XML configuration files reference Edit the configuration files in the RootInstall/conf directory to configure the server.xml file.

1 tunnelling connections. Contains elements that specify an edge to configure for HTTP tunnelling.60</Deny> See also Allow. Important: Only one application can use a port at a time. Redirect. NeedClose.yourcompany.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Redirect.0 keepalive connections. This is the default value. MaxWriteDelay . Allow HTTP 1. WriteBufferSize. and/or full or partial IP addresses from which clients cannot connect to the server. IdleAckInterval. Example <Enable>true</Enable> See also IdlePostInterval. SetCookie. MaxWriteDelay Enable Specifies whether or not to allow HTTP tunnelling connections. domain names. Each edge can have different HTTPTunnel configurations.1only keepalive Description Allow all HTTP tunnelling connections. Example <Deny>foo. Attribute name A name identifying an edge.133. IdlePostInterval. adobe. IdleAckInterval.1. SetCookie. if you configure Flash Media Server to use port 80 for HTTP tunnelling.5 CONFIGURATION AND ADMINISTRATION GUIDE 81 XML configuration files reference Deny A comma-delimited list of host names. MimeType. MimeType. Allow only HTTP 1. the web server cannot use port 80.1 or HTTP 1. Disallow all HTTP tunnelling connections. 10. These are the possible values for the Enable element: Value true false http1. Edges are defined in HostPort elements in the HostPortList container.com. For example. Contained elements Enable.com.60. Use the name specified in the HostPort element. Order Edge Container element. 10. MimeType. WriteBufferSize.

port. don’t specify anything in front of the colon. If there are multiple HostPort elements. If there are multiple HostPort elements.80. where 443 is designated as a secure port that will only receive RTMPS connections. The format is IP:port. the web server cannot use port 80. Flash Media Server logs a warning in the Access log file indicating that the specified IP:port is in use. if you configure Flash Media Server to use port 80 for HTTP tunnelling. RTMP.ini file. which are always on by default. Similarly.0. a conflict results.1 on ports 1935. each must have a different name. SSL Host Redirects unknown requests to an external server. keep in mind the following: • There is a risk in assigning more than one adaptor to listen on the same IP:port pair. each must have a different ctl_channel.0. a regular RTMP connection to port 443 fails because the server tries to perform an SSL handshake that the client fails to complete. .-443. See also Redirect HostPort Specifies to which IP address and port(s) an adaptor binds. • Only one application can use a port at a time. When an FMSCore process is started (fmscore in Linux).. and 443. This value instructs the adaptor to bind to any IP address on ports 1935. Example The following HostPort value instructs the adaptor to bind to the IP address 127. The default value is false. (A port is marked as secure by specifying a minus sign in front of the port number. This element is exposed as the ADAPTOR.. Each HostPort element corresponds to an FMSEdge process. The client will attempt to perform an SSL handshake that the server will fail to complete. where 443 is designated as a secure port that will only receive RTMPS connections. This does not apply to administrative connections.port. Attributes name A name to identify this HostPort element.) RTMPS connection attempts to ports 1935 or 80 will not succeed. 80. 80. To bind to any IP address. For example. If you want to bind an adaptor to multiple IP addresses. If another process tries to bind to the same IP:port combination.5 CONFIGURATION AND ADMINISTRATION GUIDE 82 XML configuration files reference EnableAltVhost Determines whether an alternative virtual host may be specified as a part of the RTMP URL as query parameter rtmp://host1/app/?_fcs_vhost=host2. the first adaptor to bind to the specified HostPort wins. it connects to an FMSEdge process on this internal port to establish a control channel. When assigning port numbers. <EnableAltVhost>false</EnableAltVhost> See also HTTPTunnel. To resolve this conflict. add a HostPort element for each IP address. ctl_channel The internal port that an FMSEdge (fmsedge in Linux) process listens on... The default value is :1935. and 443.HOSTPORT parameter in the RootInstall/conf/fms.Last updated 3/2/2010 FLASH MEDIA SERVER 3.

The entire response is enclosed in <FCS></FCS> elements.0. The following values instruct the adaptor to bind to IP 127. all elements in the HTTPIdent section are returned as a response.0. the data is assumed to be an IP address and binds to port 1935.0.log file. The elements in this container list HostPort elements associated with this adaptor. the HTTPIdent function must be enabled and the client must do a POST or GET for the "/fcs/ident" resource.0. For a response to be returned.HOSTPORT}</HostPort> <HostPort name="edge2" ctl_channel=":19351">:1936.0.0.1:1935.1:</HostPort> See also HostPortList HostPortList Container element.0. Example <HostPortList> <HostPort name="edge1" ctl_channel=":19350">${ADAPTOR. Example <HTTPIdent enable="true"> <Company>Adobe System Inc</Company> <Team>Flash Media Server</Team> </HTTPIdent> The following is an example request: http://serverIP:1935/fcs/ident The following is an example response: .-444</HostPort> </HostPortList> Contained elements HostPort HTTPIdent Configures the server to respond to or reject an HTTP identification request from a client.xx.-443</HostPort> If there is no colon in the HostPort value.1</HostPort> <HostPort>127.5 CONFIGURATION AND ADMINISTRATION GUIDE 83 XML configuration files reference <HostPort>127. If the HTTPIdent function is enabled but no content is specified. Attributes enable A Boolean value specifying whether the server responds to an HTTP identification request (true) or not (false). it logs the request to the edge.Last updated 3/2/2010 FLASH MEDIA SERVER 3. which are added by the server.80. When the enable attribute is set to true.0. When the server receives an HTTP Identification request. or there is a colon with no ports specified. the <FCS></FCS> response is returned without content.1 on port 1935: <HostPort>127. The default value is false.

HTTPUserInfo HTTPNull Configures the server to respond to or reject an HTTP GET request for the “/” resource from a client.71</HTTPIdent2> See also HTTPNull. Using <HTTPIdent2> enables Flash Player to send a special HTTP request before connecting to Flash Media Server. each connection may be sent to any one of many Flash Media Servers behind load balancers. The IP address can be explicitly configured and does not need to be the IP of the Flash Media Server machine.5 CONFIGURATION AND ADMINISTRATION GUIDE 84 XML configuration files reference <fcs> <Company>Adobe System Inc</Company> <Team>Flash Media Server</Team> </fcs> See also HTTPNull. For a response to be returned. Example <HTTPNull enable="false"> . If HTTPNull is disabled and the webserver is enabled.) If the tag is left empty.128. even if the <HTTPIdent2> tag or the enabled attribute is missing. the HTTPNull function is disabled. When the enable attribute is set to true. HTTPUserInfo HTTPIdent2 Configures the server to respond to or reject a special HTTP request from the client before the client attempts to make a RTMPT connection to Flash Media Server.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Attributes enabled A Boolean value specifying whether the server responds to a special HTTP identification request before making a RTMPT connection (true) or not (false). HTTPTunnel. This causes the session to be split across machines.133. Example <HTTPIdent2 enabled="true">10. the IP address is determined automatically. requests for the "/" resource are passed to the webserver. Attributes enable A Boolean value. This function is available when using Flash Player Update 3 or later. By default. RTMPT (Tunnelled Real-Time Messaging Protocol) can have difficulties working with load balancers. If a single RTMPT session consists of multiple socket connections. This feature is enabled by default. then use this tag to resolve RTMPTE and RTMPE connections more quickly: either set the enabled attribute to false or set it to true and set the value of the tag to the IP address to which you’re connecting. HTTPTunnel. The default value is false. (This allows RTMPT connections to be redirected to a different server. an HTTP 404 response is sent in response to an HTTP GET request. If you are running Flash Media Server on Linux and have enabled IPv6 but are using an IPv4 hostname (a hostname that resolves to IPv4). the HTTPIdent2 function must be enabled.

xml file: <HttpProxy enable="true" maxbuf="16384"> <Host port="80">${HTTPPROXY.ini file. Example In the default Adaptor. Contained elements Enable HTTPUserInfo Container element.HOST = webfarm.Last updated 3/2/2010 FLASH MEDIA SERVER 3. UpdateInterval . Attributes enable A Boolean value. The default value is true.HOST = :8134 HTTPTunnel Container element. The default value is 16384. Flow control kicks in when the buffer in either direction fills up. maxbuf The size of the io buffers. as in the following: HTTPPROXY. or replace the variable in the Adaptor.ini file.com:80 If you do not specify an IP address or domain name. The following is from the default Adaptor.xml file.HTTPPROXY. the server uses a localhost port. Each edge can have different HTTPTunnel configurations.example. automatically handling the case when producers and consumers differ widely in bandwidth.HOST in the fms. Note: Only one application can use a port at a time.5 CONFIGURATION AND ADMINISTRATION GUIDE 85 XML configuration files reference HttpProxy Specifies whether the server proxies unknown requests to an external server. For example.xml file. MaxSize. Contained elements Path. The elements in this section configure the absolute path to XML files and the cache settings. if you configure Flash Media Server to use port 80 for HTTP tunnelling. the value of the Host element is a variable from the fms. For proxying to work. You can set the value of HTTPPROXY. HTTPTunnel/Enable must be set to true. the web server cannot use port 80.HOST}</Host> </HttpProxy> The IP address and port to which the server proxies unknown HTTP requests. The elements in this section configure the incoming HTTP tunnelling connections to the adaptor. Request proxying to a specific host can be further controlled based upon port on which the request arrived.

When a client using HTTP tunnelling disconnects unexpectedly. in seconds. IdleTimeout IdlePostInterval Specifies the interval in milliseconds at which the client sends idle posts to the server to indicate that Flash Player has no data to send. Values that are too high may result in disconnected sessions consuming server resources for longer than necessary. which provides medium latency. and that the receiving server is ready to accept transmissions. that such a session may remain idle before it will be automatically disconnected. The value of IdleTimeout indicates the maximum time. Applications desiring low latency may configure the combination of values 128/256 for IdlePostInterval and IdleAckInterval elements. An acknowledgement code is a transmission control character used to indicate that a transmitted message was received uncorrupted and without errors. These elements should be configured at the same time.5 CONFIGURATION AND ADMINISTRATION GUIDE 86 XML configuration files reference IdleAckInterval Specifies the maximum time in milliseconds the server waits before it sends an acknowledgement code for a client idle post. in seconds.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default settings for the IdleAckInterval and IdlePostInterval elements provide medium latency and are set to 512/512 milliseconds. Example <IdlePostInterval>512</IdlePostInterval> See also IdleAckInterval. <IdleAckInterval>512</IdleAckInterval> See also IdlePostInterval. IdleTimeout IdleTimeout Specifies the maximum inactivity time. IdleAckInterval . Applications that do not have high latencies can use the configuration 1024/2048. The default value is 512 milliseconds. An IdleTimeout of -1 indicates that idle tunnel sessions will not be disconnected. for a tunnel session before it is closed. Lower values reduce latency but increase the network bandwidth overhead. For applications not sensitive to high latencies. their session may remain open for a long period of time after disconnecting. The default setting for IdleTimeout is 8 seconds. Low values reduce the latency but increase the network bandwidth overhead. use the combination 1024/2048. The values for this element and the IdlePostInterval element affect the latency observed by a client tunnelling into the server. Example <IdleTimeout>8</IdleTimeout> See also IdlePostInterval. Applications desiring low latency may configure the combination of values 128/256 for the IdlePostInterval and IdleAckInterval elements. Values that are too low may cause clients with very high latencies to become disconnected.

Occasionally. UpdateInterval MaxWriteDelay The HTTP tunnelling protocol ensures that a server will be able to write every four seconds. Example <Edge name="Edge1"> <Enable>true</Enable> <IdlePostInterval>512</IdlePostInterval> <IdleAckInterval>512</IdleAckInterval> <MimeType>application/x-fms</MimeType> <WriteBufferSize>16</WriteBufferSize> <SetCookie>false</SetCookie> <Redirect enable="false" maxbuf="16384"> <Host port="80">:8080</Host> </Redirect> <NeedClose>true</NeedClose> <MaxWriteDelay>40</MaxWriteDelay> </Edge> You may want to use this sample code as a template for configuring each edge server. By default. the notification may not reach the server. The default wait time is 40 seconds. See also HTTPTunnel .5 CONFIGURATION AND ADMINISTRATION GUIDE 87 XML configuration files reference MaxFailures Specifies the maximum number of failures an edge server may incur before it restarts. When the cache size reaches the maximum size.Last updated 3/2/2010 FLASH MEDIA SERVER 3. the value is 100. the server reduces the cache. Anomalous connections are closed after the specified wait time. Example <MaxSize>100</MaxSize> See also Path. The default number of failures is 2. which may continue to place writes in a queue. when connections close under abnormal conditions. Example <MaxFailures>2</MaxFailures> See also IdleAckInterval MaxSize Specifies the maximum number of HTTP requests the server keeps in the cache.

Example The following is the default sequence: <Order>Allow. Example <NeedClose>true</NeedClose> See also MaxWriteDelay NodeID Specifies a unique node identification that supports the implementation of load balancers. and the special characters $-_.Deny</Order> . The default value is true.Deny</Order> The default sequence indicates that access to a server is denied unless it is specified in the Allow element. The ID must contain URL-safe characters: alphanumerical A-Z.Last updated 3/2/2010 FLASH MEDIA SERVER 3.+!*'() See also HTTPTunnel Order Specifies the sequence in which the server evaluates the Allow and Deny elements. The alternative sequence Deny.5 CONFIGURATION AND ADMINISTRATION GUIDE 88 XML configuration files reference MimeType Specifies the default MIME (Multi-purpose Internet Mail Extensions) type header sent on tunnel responses.0 non-keepalive connections are closed once the response is written. The server uses the entry for the MIMEType element only if it is unable to determine the MIME type from the incoming requests. a-z. The following is the default sequence: <Order>Allow.Allow indicates that access to a server is allowed unless specified in the Deny element and not specified in the Allow element. a following string of up to nine characters is prefixed to the tunnel session IDs and can be used by the load balancers to uniquely identify each node in the cluster. which closes the connections. If the NodeID element is used. Example <MimeType>application/x-fcs</Mimetype> See also HTTPTunnel NeedClose A Boolean value specifying whether or not HTTP 1. and 0-9. The server generally uses the MIME type specified by the incoming requests.

When an edge server fails. it waits for the interval specified here before it restarts. See also MaxSize. The wait time is specified in seconds. Example <RecoveryTime>30</RecoveryTime> See also MaxSize Redirect Specifies whether or not the adaptor redirects unknown requests to an external server. The number of failures is specified by the MaxFailures element. the request is considered an error and the connection is closed. NeedClose ResourceLimits Container element. The maxbuf attribute determines how big the IO buffers are.5 CONFIGURATION AND ADMINISTRATION GUIDE 89 XML configuration files reference See also Allow. By default. <Redirect enable="false" maxbuf="16384"> <Host port="80">:8080</Host> <Host port="443">:8443</Host> </Redirect> See also MaxWriteDelay. HTTP tunnelling must be enabled. Deny Path Specifies the absolute path of the folder where the server looks for XML files. Example This example instructs the server to redirect unknown requests to the specified redirect host. . it is set to uInfo/ in the FMS install directory. At any other time. UpdateInterval RecoveryTime Specifies the number of seconds an edge server waits before restarting after a failure. Flow control automatically handles the request when the bandwidth resources for producers and consumers differ widely.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Flow control begins when the buffer in either direction fills up. An unknown request may connect only when it is the first request on a newly accepted connection. Note: For redirection to work.

setting enabled to false will not allow RTMPE or RTMPTE on this adaptor. then for HTTP tunnelling to work. If the server does not have an externally visible IP address. RecoveryTime RTMP Container element. cookies are currently supported only on Flash Player 9.5 CONFIGURATION AND ADMINISTRATION GUIDE 90 XML configuration files reference The elements in this container configure the resource limits for the edge server. RTMPE is the encrypted RTMP protocol covering both RTMPE and RTMPTE. Example <RTMPE enabled="true"></RTMPE> See also RTMP SetCookie Specifies whether or not the server sets a cookie. The elements in this container determine whether encrypted RTMP (RTMPE) and encrypted tunnelling RTMP (RTMPTE) can be used.28 or later. in Windows only. . The load balancer checks the cookie and sends requests with this cookie to the same server.xml configure the server to act as an SSL-enabled server to accept incoming SSL connections.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Contained elements RTMPE RTMPE Specifies whether encrypted RTMP (RTMPE) can be used. Note: For tunnelling connections. known as SSL.0. you should enable cookies when you deploy servers behind a load balancer. Keep in mind that the cookie adds to the HTTP header size and increases the bandwidth overhead. The SSL elements in Adaptor. The elements in this section configure the incoming connections via the Secure Sockets Layer protocol. This element is enabled by default. Contained elements MaxFailures. Example <SetCookie>false</SetCookie> See also NodeID SSL Container element.

or one of a selected number of aliases for common groupings. See also SSLCertificateFile. SSLSessionTimeout SSLCipherSuite Specifies the suite of encryption ciphers that the server uses to secure incoming connections.5 CONFIGURATION AND ADMINISTRATION GUIDE 91 XML configuration files reference You need to acquire a digital certificate to use SSL. such as Verisign. you then use the SSL elements to configure the server for SSL. The following is a quick start to allowing SSL-enabled connections to the server: • to the SSL section of the Adaptor. the certificate location is assumed to be relative to the adaptor directory. If an absolute path is not specified.xml file. SSLPassPhrase. • Save the modified Adaptor. authentication method. a password must be specified for decrypting and placed in the SSLPassPhrase element described below. • Specify the location of the certificate in the SSLCertificateFile element. This element contains a list of colon-delimited components. The default is PEM. • If the private key file is encrypted. . it is assumed to be relative to the adaptor directory. SSLSessionTimeout SSLCertificateKeyFile This specifies the location of the private key file that corresponds to the public key in the certificate specified in SSLCertificateFile element. If this file is encrypted. A component can be a key exchange algorithm. Contained elements SSLServerCtx SSLCertificateFile Specifies the location of the certificate to return to clients who want to make a secure connection to the server. encryption method. or by creating it yourself with a product such as OpenSSL. The encryption format is either PEM (Privacy Enhanced Mail) or ASN1 (Abstract Syntax Notation 1). SSLCipherSuite. • Specify where to find the associated private key file in the SSLCertificateKeyFile element. Once you get your SSL certificate through a certificate authority. Example <SSLCertificateKeyFile type="PEM"></SSLCertificateKeyFile> The type attribute specifies the type of encoding used for the certificate key file. SSLCipherSuite. SSLPassPhrase. digest type. Example <SSLCertificateFile>c:\myCertFile</SSLCertificateFile> See also SSLCertificateKeyFile.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file. If an absolute path to the key file is not specified. specify the passphrase to use for decrypting the private key file in the SSLPassPhrase element.

SSLCertificateKeyFile.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> See also SSLCertificateFile. The elements in this section control the incoming SSL configuration for this adaptor. SSLPassPhrase. SSLSessionTimeout SSLSessionTimeout Specifies in minutes how long a SSL-based session remains valid. If the key file is not encrypted. SSLCertificateKeyFile. this element is left blank. Example <SSLPassPhrase encrypt="true">dGluY2Fu</SSLPassPhrase> The encrypted password is equivalent to the plain text format: <SSLPassPhrase>tincan</SSLPassPhrase> or <SSLPassPhrase encrypt="false" >tincan</SSLPassPhrase> Even though the element attribute is named "encrypt". SSLSessionTimeout SSLPassPhrase Specifies the passphrase to use for encrypting the private key file. When a client connects to a server for the first time. SSLCipherSuite. the server sends back a session object to the client. it is not a true encryption. which the client can place in the cache and reuse at a later time. it must perform the full handshake. Contained elements SSLCertificateFile. It is a base64 encoding that makes the password less readable. SSLPassPhrase. Specifies the password to use for decrypting the key file if the key file is encrypted. The default time period is 5 minutes. After that first handshake.5 CONFIGURATION AND ADMINISTRATION GUIDE 92 XML configuration files reference Note: Contact Adobe Support before changing the default settings as listed in this example. SSLCipherSuite. To prevent plain text passwords from appearing in the configuration file. encode the password in base64 format and set the encrypt attribute to true. See also SSLCertificateFile. SSLSessionTimeout SSLServerCtx Container element. . The server does not require the full SSL handshake if the session is still valid. SSLCertificateKeyFile. SSL sessions are used to improve performance by avoiding the need to perform the full SSL handshake for every connection. If the client connects to the same server again at a later time. it can send back the cached session object.

xml file in the virtual host directory configures the default settings for all applications within the virtual host. application-specific Application.xml file in the virtual host directory. These settings include the size of the Server-Side Media ActionScript runtime engine. Example <WriteBufferSize>16</WriteBufferSize> See also ResourceLimits Application. SSLCipherSuite UpdateInterval Specifies how often the server refreshes the cache content. • If an element has the override attribute set to no. The Application.xml file in the application directory override settings in the Application. By default. In most cases. in milliseconds. Example <UpdateInterval>5000</UpdateInterval> See also Path.xml files cannot override that element’s setting. but not always. the location at which streams and shared objects are stored. then all subelements also cannot be overridden.xml file contains the settings for Flash Media Server applications. the value is 5000 milliseconds. .xml file to the application’s registered application directory (/applications/app_name) and edit it to include the settings you want.5 CONFIGURATION AND ADMINISTRATION GUIDE 93 XML configuration files reference Example <SSLSessionTimeout>5</SSLTimeout> See also SSLCertificateFile.xml file. and the default is used. You can add an override attribute to certain elements in a virtual host’s Application. SSLCertificateKeyFile.xml file is located in the application directory and specifies a different value than the default for an element that cannot be overridden. • If an Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. copy an Application. the settings in the Application. it is ignored. If you want to have different settings for a particular application. and bandwidth limitations. MaxSize WriteBufferSize Specifies the size of the write buffer in kilobytes.xml file The Application. SSLPassPhrase. as in the following: <LoadOnStartup override="no">false</LoadOnStartup> The server uses the following rules when applying the override attribute: • When the override attribute is included in an element and set to no. The default size is 16 KB.

the server will not start. It intercepts and examines each connection request to Flash Media Server to determine whether the connection should be accepted or rejected. To see the element structure and default values. aggregate messages are broken up into individual messages before being delivered to clients. it is ignored. .5 CONFIGURATION AND ADMINISTRATION GUIDE 94 XML configuration files reference • If the default Application. the server will deliver aggregate messages to clients that support them. the Bandwidth and BandwidthCap container elements include an override parameter set to yes. When this setting is disabled. • All subelements under the LoadOnStartup element cannot be overridden. AggregateMessages (Queue) Container element. Contained elements FolderAccess Access (Logging) Container element. • To change an element so it cannot be overridden. Contained elements Checkpoints AccumulatedIFrames Container element. The Access plug-in consists of the libconnect. see the Application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Note: By default. which allows the values for the ClientToServer and ServerToClient elements nested in these sections to be overridden. Access Container element. • If the user-specified Application. • If you omit the override attribute. When the enabled attribute is set to true. The default is false.xml file is missing or invalid. The Client element in this XML file includes an override="no" attribute by default. MaxSize (AccumulatedIFrames) AggregateMessages (Client) Specifies whether or not to send aggregate messages to clients. contains an element that control the size of the aggregate messages. Contains elements that configure logging in the Access log.xml configuration file is invalid. The elements in this section specify the maximum size and duration of intermediate frames a live stream can hold in the buffer. the LoadOnStartup element can be overridden. Contained elements MaxTime.dll file. set the override tag to no in the uppermost tag.xml file installed with Flash Media Server in the RootInstall/conf/_defaultRoot_/_defaultVhost_ directory.

When the enabled attribute is set to true (the default value). HTTPTunnel. Example <AggregateMessages enabled="false"><\AggregateMessages> See also MaxAggMsgSize. which prevents TCP/IP connections over nonstandard ports. the server creates aggregate messages. Flash Player communicates with the server using the RTMP protocol over port 1935. The server attempts to send aggregate messages to supported clients whenever possible.allowDebug. when queuing is enabled. Example <AllowDebugDefault>false</AllowDebug Default> See also MaxPendingDebugConnections AllowHTTPTunnel This element configures the server to allow HTTP tunnelling connections into this application. The default value is false.5 CONFIGURATION AND ADMINISTRATION GUIDE 95 XML configuration files reference This element also specifies.Last updated 3/2/2010 FLASH MEDIA SERVER 3. it will try again over ports 443 and 80 in an attempt to get around firewall settings. By default. In some cases. OutChunkSize Allow Specifies whether or not to allow the "following and Location:" header that is sent with redirection of an HTTP header. Flash Player has to negotiate a connection to Flash Media Server through an edge server. UnrestrictedAuth AllowDebugDefault Specifies the default value for application. whether messages in the queue can be combined to form aggregate messages. The values for this element are described in the following table. Example <Allow>true</Allow> See also Max. MaxMessageSizeLosslessVideo. aggregate messages are always broken up into individual messages before being delivered to clients. The default is true. allowing HTTP redirects. When this setting is disabled. This is an opening that allows debug connections on a per application basis. If that fails. . or use the HTTP protocol to transmit RTMP packets (called HTTP tunnelling) if there is a firewall that allows only HTTP content to be sent out to public servers.

xml values.Last updated 3/2/2010 FLASH MEDIA SERVER 3. unless values are defined in the Application. unless the values are defined in the Vhost.1only keepalive Description Allows tunnelling connections. Example <AllowHTTPTunnel>true></AllowHTTPTunnel> See also Allow Application This is the root element for Application. Client. The server closes the client connection to the server and writes a message to the access log. the values defined in the Server. Contained elements CombineSamples. When a client has been idle longer than the maximum idle time (60 seconds by default). Contains elements that determine whether or not to close idle clients automatically. See also Process.0 and 1. HTTP. The elements in this section specify the settings for audio streams on the server.1 keepalive connections.xml file. The Application.xml file.xml values. Use the AutoCloseIdleClients element to specify how often the server should check for idle clients.xml configuration file apply to all clients connected to the Vhost. The Vhost. JSEngine. (Subsequently. SendSilence.xml values override the Server.xml. A client is active when it is sending or receiving data. MaxAppIdleTime. The default value is false. you can disable the feature for individual virtual hosts in the Vhost. Allows HTTP 1. Password AutoCloseIdleClients Container element. Allows HTTP 1. you must enable the feature in the Server.xml. The values defined in the Vhost. LoadOnStartup. . SharedObjManager. If the enable attribute is omitted or set to false. AllowHTTPTunnel.xml configuration file apply to all clients connected to the server. To configure the closing of idle connections.xml files or for individual applications in Application. Once you enable the feature in the Server.5 CONFIGURATION AND ADMINISTRATION GUIDE 96 XML configuration files reference Value true false http1.xml file. Set the enable attribute to true to close idle clients.xml values override the Vhost. the feature is disabled. Debug. SWFVerification Audio Container element. The server also writes a message such as “Client x has been idle for y seconds” in the core and event logs. StreamManager.xml file. the server sends a status message to the NetConnectionobject (the client).1 connections only. Disallows tunnelling connections.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 97
XML configuration files reference

Example
<AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients>

AudioSampleAccess
Allows the client application to access the raw uncompressed audio data in a stream. By default, this element is disabled. To enable it, set the enable attribute to true. In the tag, specify a list of semicolon-delimited folders to which client applications have access. When this element is enabled, all clients can access the audio data in streams in the specified folders. To enable access to all audio data streamed by the server, specify / in the tag. The folder path is restricted to the application’s streams folder or folders, so do not use absolute paths in the list of folders. While you can also enable access through Server-Side ActionScript, this element allows access to the data without requiring Server-Side ActionScript. You can also override this element with the Access plug-in or Server-Side ActionScript. Example If an application is configured to store streams in folders C:\low_quality and C:\high_quality, the configuration to allow access to sample those streams is as follows:
<AudioSampleAccess enabled="true">low_quality;high_quality</AudioSampleAccess>

See also
VideoSampleAccess

AutoCommit
Specifies whether shared objects are automatically committed when they have been changed. Setting this element to false disables Flash Player function for all shared objects within this instance. Note: If the AutoCommit function is disabled, the server-side script has to call the save function or the SharedObject.commit command for the shared object to persist; otherwise, all data will be lost when the application is shut down. Example
<AutoCommit>true</AutoCommit>

See also
StorageDir, DuplicateDir, ResyncDepth, LockTimeout, MaxProperties, MaxPropertySize

Bandwidth
Container element. The elements nested in this container specify the bandwidth settings for upstream (client-to-server) and downstream (server-to-client) data. By default, the Bandwidth element includes an override parameter set to yes, which allows the values for the ClientToServer and ServerToClient elements to be overridden as well.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 98
XML configuration files reference

Contained elements
ClientToServer (Bandwidth), ServerToClient (Bandwidth)

BandwidthCap
Container element. The elements in this section specify the bandwidth settings that a user can set. By default, this element includes an override parameter set to yes, which allows the values for the ClientToServer and ServerToClient elements nested in this section to be overridden, too. Contained elements
ClientToServer (BandwidthCap), ServerToClient (BandwidthCap)

BandwidthDetection
Container element. This element contains settings for how the server detects bandwidth. Set the enable attribute to true or false to turn this feature on or off. The server can detect client bandwidth in the core server code (native) or in a server-side script (script-based). Native bandwidth detection is enabled by default and is faster than script-based because the core server code is written in C and C++. The server detects bandwidth by sending a series of data chunks to the client, each larger than the last. You can configure the size of the data chunks, the rate at which they are sent, and the amount of time the server sends data to the client. The following table lists the values available for the BandwidthDetection element.
Element
BandwidthDetection

Description Set the enabled attribute to true or false to turn this feature on or off. The maximum rate in Kbps at which the server sends data to the client. The default value is -1, which sends the data at whatever rate is necessary to measure bandwidth. The amount of data in bytes that the server sends to the client. To detect the client’s bandwidth, the server attempts to send a series of random blocks of data to the client, each time sending this much more data. For example, x bytes are sent, followed by 2x bytes, followed by 3x bytes, and so on until MaxWait time has elapsed. The number of seconds the server sends data to the client. Increasing this number provides a more accurate bandwidth figure but also forces the client to wait longer.

MaxRate

DataSize

MaxWait

Example
<BandwidthDetection enabled="true"> <MaxRate>-1</MaxRate> <DataSize>16384</DataSize> <MaxWait>2</MaxWait> </BandwidthDetection>

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 99
XML configuration files reference

Contained elements MaxRate, DataSize, MinBufferTime (Live)

Bits
This element contains the settings for Flash Player on the Windows and Macintosh platforms. Example
<Bits from="WIN 6,0,0,0" to="WIN 7,0,55,0">0x01</Bits> <Bits from="MAC 6,0,0,0" to="MAC 7,0,55,0">0x01</Bits>

See also
UserAgent

BufferRatio
Specifies the ratio of the buffer length used by server-side stream to live buffer. Example
<BufferRatio>0.5</BufferRatio>

See also
Server

Cache
Container element; contains elements that configure the cache setting for SWF verification. See also TTL, UpdateInterval

CachePrefix
Specifies the cache prefix that is passed from the origin server to the edge server. This element is set on the origin server. The edge server uses the value of this element as a relative path to locate the cache file defined in the CacheDir element. The type attribute provides additional specification for the cache prefix. The type attribute can be set to path or sname. The default is path. Examples
<CachePrefix type="path"></CachePrefix>

When the attribute type is path, the server appends the physical path of the recorded stream to the prefix.
<CachePrefix type="sname"></CachePrefix>

When the attribute type is sname, the server appends the stream name to the prefix. The cache prefix is any text with or without preset parameters. The prefix can be any name without special characters, such as \, :, *, ?, ", <, >, |. All parameters are surrounded by “?”. The server substitutes the actual names for everything specified within the “?”.

Last updated 3/2/2010

FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 100
XML configuration files reference

By default, the prefix is set to ?IP?.
Cache prefix
?IP? ?APP? ?APPINST? ?VHOST?

Actual name IP address of the server Application name Application instance vhost name

You can include the IP address in the prefix to avoid file collision. For example, the edge server might be connecting to two different origin servers with the same file in c:\data\foo.flv. Adding the IP to the prefix for these files points each file to the appropriate server. If you want more than one origin server to share the cache file, do not include the IP as a parameter. Remember the cache prefix is a relative path used by the edge server to look up the cache stream file. Examples The cache prefix creates a relative path in the edge’s CacheDir. All parameters are separated by \ or /.
<CachePrefix type="path">c:\fms\flvs\foo.flv. data/?IP?</CacheDir>

resolves to:
data/xxx.xxx.xxx.xxx/c/fms/flvs/foo.flv <CachePrefix type="path">?APPINST?/data</CacheDir>

resolves to:
app1/inst1/data/c/fms/flvs/foo.flv <CachePrefix type="path">origin1/data/</CacheDir>

resolves to:
origin1/data/c/fms/flvs/foo.flv

See also
StorageDir, DuplicateDir, CacheUpdateInterval

CacheUpdateInterval
This element defines the wait interval for updating cache streaming in the edge server. The interval is defined in milliseconds. The default value is 10 minutes. The minimum interval is 10 seconds. The maximum interval is 24 hours. Example
<CacheUpdateInterval>10</CacheUpdateInterval>

See also
StorageDir, DuplicateDir, CachePrefix

HTTPTunnel. The elements nested within this container configure the client. The default bandwidth is 100. or change the checkpoint interval of this application. the events you use to calculate billing might not occur within a billing cycle. You can configure this value in the Bandwidth section of XML and in the BandwidthCap section of XML. To solve this problem. If your programming includes live events or 24/7 programming.250. The following are available as checkpoint events: connect-continue.xml file. By default. Contained elements Bandwidth. The values in the Bandwidth section can be overridden. MsgQueue. OutChunkSize. This allows ISPs to host applications for customers and ensure that no customer abuses the bandwidth limit. and publish-continue. Contained elements LogInterval Client Container element. BandwidthDetection.xml file. Checkpoint events log bytes periodically during an event. MaxMessageSizeLosslessVideo. The values in the Bandwidth section can be overridden. the Client element includes an override="no" parameter. BandwidthCap. a customer can set any bandwidth limit for their applications. you can enable checkpoint events. Example <ClientToServer>1250000</ClientToServer> See also ServerToClient (Bandwidth) ClientToServer (BandwidthCap) Specifies the maximum bandwidth a client can send to the server. You can disable logging checkpoints for this application. ClientToServer (Bandwidth) Specifies the bandwidth the client can use for sending data upstream to the server. Logging checkpoint events to the Access log is enabled in the Vhost.000 bytes per second. play-continue. Individual applications cannot override how the elements in the Client section are configured. but the values in the BandwidthCap section are not. If the checkpoint interval is not specified in the Application.5 CONFIGURATION AND ADMINISTRATION GUIDE 101 XML configuration files reference Checkpoints Many companies use statistics from the access log to bill customers.xml file by default. or if the value is invalid. The default bandwidth is 1.Last updated 3/2/2010 FLASH MEDIA SERVER 3. For example. For example. but cannot exceed the caps set by the ISP. . but the values in the BandwidthCap section are not. This allows ISPs to host applications for customers and ensure that no customer abuses the bandwidth limit. the server uses the value set in the Vhost. You can configure this value in the Bandwidth section of XML and in the BandwidthCap section of XML.000. a customer can set any bandwidth limit for their applications. but cannot exceed the caps set by the ISP.000 bytes per second.

followed by 3x bytes. Contained elements AllowDebugDefault. The elements in this section configure debug connections. Note: Use this strategy of combining sound samples advisedly during periods of high CPU usage. This strategy saves the CPU and bandwidth overhead when transmitting individual audio packets only.5 CONFIGURATION AND ADMINISTRATION GUIDE 102 XML configuration files reference Example <ClientToServer>100000000</ClientToServer> See also ServerToClient (BandwidthCap) CombineSamples Container element. the server attempts to send a series of random blocks of data to the client. and so on until MaxWait time has elapsed. MaxSamples. HiCPU. Interface DataSize Specifies the amount of data in bytes that the server sends to the client. each time sending this much more data. including the maximum number of connections and the value for application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. as it can cause latency. For example. followed by 2x bytes. MinBufferTime (Live) Debug Container element. x bytes are sent. Contained elements LoCPU. To detect the client’s bandwidth. Subscribers Connections Container element.allowDebug. Contained elements MaxTimeOut (Connections). Reuse. Example <DataSize>16384</DataSize> See also MaxRate. The server conserves system resources by combining sound samples. MaxPendingDebugConnections . The elements in this section configure the HTTP connections for this application.

for all your applications and application instances under a single virtual host. if the value of Scope is adaptor. Each virtual host is allotted three core processes. but you should never need more than 40. The default value is false. The parent folder is specified in the SWFFolder element. In other words. Specify protocols in a comma delimited list. Specifying zero scans the parent folder and no subfolders. For example. or rtmpe. the server uses the value immediately lower than the one specified in the Scope tag. The default value is 1. which specifies the maximum number of processes to run concurrently. apps. which contain instances. With the default configuration. so systems that use multiple virtual hosts will generate more running processes. See also SWFFolder. the following XML disallows rtmp and rtmps and only allows clients to connect over rtmpe: <DisallowedProtocols>rtmp. which contain clients. which contain applications. This tag contains a numprocs attribute. Specifying a positive value scans that number of subfolder levels. the value of Distribute can be vhosts. Scopes have an enclosing relationship with a strict ordering: adaptors contain virtual hosts. the numprocs attribute must be set to a value higher than 0 or 1. the value of Distribute can be insts or clients. If the value of Scope is app. SWFVerification DisallowedProtocols Specifies which protocols cannot be used to connect to an application. Specifying a negative value scans all subfolder levels. The default value of the numprocs attribute is 3. which allows all protocols to connect to the server. You can specify rtmp. Note: There is no limit to the value of the numprocs attribute. rtmps. Specifying rtmpe includes rtmpe and rtmpte connections. To use this feature.5 CONFIGURATION AND ADMINISTRATION GUIDE 103 XML configuration files reference Diagnostic Specifies whether diagnostic logging for the message queue is enabled. The value of the Distribute tag must be a scope that is lower in order than the value in the Scope tag. This feature is turned on by default. insts. The following table lists the values available for the Distribute element: . The default value is insts.Last updated 3/2/2010 FLASH MEDIA SERVER 3. three core processes will run. See also Enabled DirLevelSWFScan Specifies the number of levels of subfolders within a parent folder to scan for SWF files.rtmps</DisallowedProtocols> The default value is blank. Any protocol not specified is allowed. meaning each application instance runs in its own process. which means that the server scans only one subfolder level. By default. Distribute Specifies how to distribute application instances to processes. Specifying rtmp includes rtmp and rtmpt connections. or clients.

Each client connection runs in its own process.xml file: one is in the SharedObjManager container and one is in the StreamManager container. Use this value for stateless applications—applications that don’t require clients to interact with other clients and don’t have clients accessing live streams. clients Example <Distribute numproc="1"></Distribute> See also Scope. if a shared chat application were set to client. This location must already exist when a shared object is copied to it. MaxFailures. Most vod (video on demand) applications are stateless because each client plays content independently of all other clients. you must also set the Distribute numprocs attribute to a value greater than 1. This is the default value. If you choose this value. Example To include the application name in the paths for the backup files. This is one of two DuplicateDir elements in the Application.5 CONFIGURATION AND ADMINISTRATION GUIDE 104 XML configuration files reference Value vhosts apps insts Description All instances of applications in a virtual host run together in a process. Chat and gaming applications are not stateless because all clients share the application state.Last updated 3/2/2010 FLASH MEDIA SERVER 3. RecoveryTime DuplicateDir Note: This feature has been deprecated. the messages wouldn't reach everyone in the chat because they’d be split into separate processes. in seconds. Each application instance runs in its own process. change the appName attribute to "true". LifeTime. All instances of an application run together in a process. <DuplicateDir appName="true">c:\backupSharedObjects</DuplicateDir> <DuplicateDir appName="true">c:\backupStreams</DuplicateDir> See also StorageDir Duration This element instructs the server how long. This location serves as a backup for shared object files and recorded stream files. For example. to wait before it notifies the client when the audio has stopped in the middle of a live or recorded audio stream. Specifies the physical location where duplicate copies of shared objects or recorded streams are stored. Example <Duration>3</Duration> . There is effectively no maximum value (the maximum is the maximum value of a 32-bit integer). The default wait time is 3 seconds. The minimum wait time is 1 second.

the new keyframe is calculated and generated in Flash Player 9 Update 3 or later. See also Live (StreamManager) Exception This element indicates that a specific user agent is an exception to authentication. a new keyframe is dynamically generated to provide smooth seeking to that index point. the server erases a recorded stream when a new publisher starts publishing. the new keyframe is calculated and generated in Flash Player 9a or later. Example <EnhancedSeek>true</EnhancedSeek> See also KeyFrameInterval EraseOnPublish When set to true. For example. The default value is false. This is a string comparison with editing to make all numeric fields equal length.0. Note: The server generates new keyframes for Sorenson Spark-encoded FLV files. Add To="WIN 9. Use the from and to attributes to indicate the lowest and highest versions to except. When set to true.0" and From="WIN 9.0" and only that version is an exception.0 as its UserAgent. using a specific Flash Player will report WIN 9. For On2 VP6.28.0. See also UserAgentExceptions . For H.28. See also Diagnostic EnhancedSeek This element enables or disables fine-tuning of the seeking performance within streams by creating a keyframe.Last updated 3/2/2010 FLASH MEDIA SERVER 3. this setting is disabled and the server does not erase a recorded stream.0.5 CONFIGURATION AND ADMINISTRATION GUIDE 105 XML configuration files reference See also Password Enabled Specifies whether diagnostic logging for the message queue is enabled.28. By default.264-encoded video. The server does not insert keyframes and all seeks begin at the nearest existing keyframe. Keyframes improve the visual display of video files while seeking. The default value is true.

The default is true. The VirtualDirectory element nested within this container configures the JSEngine file object settings. which allows access to a particular directory. See also SWFVerification FirstHashTimeout This element defines the maximum amount of time that a client can use to provide its first verification to the server. MaxQueueSize. and folderlevel access (a value of true). Contained elements VirtualDirectory FinalHashTimeout This element defines the maximum amount of time that a client can use to provide its final verification to the server. AccumulatedIFrames FolderAccess Configures the level of permission that the Access plug-in can set for accessing streams and shared objects. which allow access to a particular file only. This allows two levels of permissions: file-level access (a value of false). See also Queue. MaxQueueDelay. See also SWFVerification FlushOnData Specifies whether the server flushes the message queue when a data message arrives.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <HiCPU>80</HiCPU> . The default percentage of utilization is 80. This element is important for streaming data-only messages. so the server can send out the messages immediately. Example <FolderAccess>false</FolderAccess> See also Access HiCPU This element instructs the server to start combining samples when CPU utilization is higher than the specified percentage of CPU resources.5 CONFIGURATION AND ADMINISTRATION GUIDE 106 XML configuration files reference FileObject Container element.

Redirect HTTPTunnel Container element. LoCPU. . Tunnel. The tunnelling protocol is based on the client continuously polling the server. Verbose. The port number can also be specified in the Port element.example.com:8080</Host> See also Port. Example <HTTP1_0>false</HTTP1_0> See also HTTP. Example <Host>www. Selecting too high values can adversely affect the interactivity of the application and the server.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The elements nested within this container configure the parameters for HTTP tunnelling (sending RTMP packets through HTTP). Username. Proxy. Contained elements HTTP1_0.xml configuration file offers three settings for these parameters. The elements in this section configure the HTTP connection settings for this application. Selecting too small a delay value for the above parameters will increase the polling frequency and reduce network performance and efficiency. The frequency of polling affects both network performance and the efficiency of the HTTP protocol. Redirect HTTP1_0 This element determines whether or not the server can use the HTTP 1.5 CONFIGURATION AND ADMINISTRATION GUIDE 107 XML configuration files reference See also Subscribers. disallowing the use of the HTTP 1. Password HTTP Container element. Proxy. The value of the Host element can be the host name or an IP address. Verbose.0 protocol. The IdleAckInterval and IdlePostInterval elements control the polling frequency on a per-client basis. The following table presents these settings. Connections. The Application. Connections. Type.0 protocol. MaxSamples Host This element identifies the HTTP proxy. The default is false.

WriteBufferSize IdlePostInterval Specifies how long Flash Player should wait before sending an idle post to the server. The server may respond sooner than the value of this element if it has data to send back to the client or if some other client is being blocked by the current idle request. This interval implies that the client may not be able to reach the server for the selected duration. WriteBufferSize IdleAckInterval Specifies the maximum time the server may wait before it sends back an ack (acknowledgement code) for an idle post sent by the client. IdleAckInterval. Example <IdleAckInterval>512</IdleAckInterval> See also IdlePostInterval. the default value of 512 milliseconds is used.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <IdlePostInterval>512</IdlePostInterval> . If the IdlePostInterval element is set to a value that lies outside of this range. The interval cannot be set to a negative value.5 CONFIGURATION AND ADMINISTRATION GUIDE 108 XML configuration files reference Acceptable Latency Low Medium High IdlePostInterval 128 milliseconds 512 milliseconds 1024 milliseconds IdleAckInterval 256 milliseconds 512 milliseconds 2048 milliseconds Example <HTTPTunnel> <IdlePortInterval>512</IdlePostInterval> <IdleAckInterval>512</IdleAckInterval> <MimeType>application/x-fcs</MimeType> <WriteBufferSize>16</WritebufferSize> </HTTPTunnel> Contained elements IdlePostInterval. but posting is necessary to provide the server with an opportunity to send data downstream to the client. Idle posts are sent when Flash Player has no data to send. The interval for an idle post ranges from 0 to 4064 milliseconds. MimeType. MimeType. The default interval is 512 milliseconds. Note: At times. the server will not be able to send any data to the client for the selected duration.

The default interval is 3 seconds. Set this to 0 to disable silence message transmission. Defining properties in the default Application. WriteBufferSize Interface This element defines the name to use as the outgoing network interface. Silence messages are used to support older versions of Flash Player.5 CONFIGURATION AND ADMINISTRATION GUIDE 109 XML configuration files reference See also IdleAckInterval.xml file in an application folder creates properties available for that application only. In the server Application.xml configuration files. Defining properties in an Application. The name can be an interface name. with the values jdoe and engineering.xml file creates properties available for all applications on a virtual host. The property name corresponds to the tag’s name. Bit-flag 0x01 is used to control the silence message.example. respectively: <JSEngine> <config> <user_name>jdoe</user_name> <dept_name>engineering</dept_name> </config> </JSEngine> .com</Interface> See also MaxTimeOut (Connections). The server only sends the silence message to clients specified in the UserAgent element in the Client section. create an XML tag. The elements nested within this container configure the JavaScript engine.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example The following XML fragment defines the properties user_name and dept_name. Reuse Interval Specifies the interval in milliseconds for sending silence messages when no audio is being published to a live stream. MimeType. an IP address. or a host name. To define a property. Example <Interface>www. you can define properties for the server-side Application object. and the property value corresponds to the tag’s contents. Example <Interval>3</Interval> See also SendSilence JSEngine Container element.

Setting a higher value for the interval. however. set this element to a nonzero value. if this tag is unspecified or set to a value out of range. EraseOnPublish .property. MaxLatency. and the amount of time the server waits before allowing another publisher to take over a live stream. The elements nested within this container configure the intermediate frames in a live stream and the message queue. ScriptLibPath. Note: Be aware of the correlation between file size and accuracy of seeking when you set this value.config["prop_name"] Note: The properties you define are accessible from application. MaxGCSkipCount. MaxTimeOut (JSEngine). RollOver Live (StreamManager) Container element.config. DuplicateDir. The value of this element is defined in milliseconds. The initial value is 60000. which is the recommended value. The same video has a size of 109 KB with the KeyFrameInterval element set to 1000. or 43%. Process rollover happens only when the Scope element is set to inst. reduces the seeking accuracy. Contained elements RuntimeSize. which is an increase of 33 KB.5 CONFIGURATION AND ADMINISTRATION GUIDE 110 XML configuration files reference To access the property in server-side code.property. or 17%. Queue. which is an increase of 13 KB. use the syntax in either of these examples: application. CacheUpdateInterval LifeTime Container element. This element determines the lifetime of core processes. not from application. FileObject. Setting this element to a higher value than the initial value reduces the number of keyframes added to the FLV file and thus reduces the file size. Example <KeyFrameInterval>1000</KeyFrameInterval> See also StorageDir.prop_name application. PublishTimeout. Contained elements AccumulatedIFrames. the server uses a default value of 1000. For example. To roll over such processes. However. a 15-second video with a file size of 76 KB is increased only to 89 KB when the KeyFrameInterval element is set to 5000. XMLSocket. Contained elements MaxCores. NetConnection KeyFrameInterval This element defines how often to generate and save keyframes in an FLV file.config.Last updated 3/2/2010 FLASH MEDIA SERVER 3. StartClockOnPublish.

5 CONFIGURATION AND ADMINISTRATION GUIDE 111 XML configuration files reference Live (MsgQueue) Container element. The default value is -1. MaxPropertySize LoCPU This element instructs the server to stop combining samples when CPU utilization is lower than the specified percentage of CPU resources.Last updated 3/2/2010 FLASH MEDIA SERVER 3. If you set this element to true. Example <LockTimeout>-1</LockTimeout> See also StorageDir. Having an application instance loaded at server start-up saves time when the first client connects to that application. . which instructs the server to wait for an indefinite time. an instance of each application on the server will be loaded at start-up. StreamManager LockTimeout Specifies the timeout value before automatically unlocking a shared object if there is a client waiting for an update. The timeout value is specified in seconds. The default percentage of utilization is 60. Contains elements that control the server logs. AutoCommit. MaxProperties. MaxSamples Logging A container element. DuplicateDir. JSEngine. The elements nested within this container configure live audio. HiCPU. The default value is false. Example <LoCPU>60</LoCPU> See also Subscribers. Example <LoadOnStartup>false</LoadOnStartup> See also Process. ResyncDepth. MinBufferTime (Live) LoadOnStartup This element determines whether or not the server loads an application instance when the server starts. Contained elements MaxAudioLatency. MaxAppIdleTime.

ApplicationGC MaxAudioLatency Specifies that live audio should be dropped if audio exceeds the time specified. when aggregate messages are enabled. Example <MaxAudioLatency>2000</MaxAudioLatency> See also MinBufferTime (Live) . StreamManager. The default value is 4096. MaxQueueSize.Last updated 3/2/2010 FLASH MEDIA SERVER 3. See also Queue. MaxQueueDelay. The maximum idle time is specified. LoadOnStartup. See also Checkpoints Max This element defines the maximum number of redirects allowed. AccumulatedIFrames MaxAppIdleTime Specifies the maximum time an application instance can remain idle with no clients connected before it is unloaded from the server’s memory. If the application instance is loaded with no clients connected. An application instance is evaluated as idle after all clients disconnect from it. See also Allow MaxAggMsgSize Specifies the maximum size in bytes of the aggregate messages created from the message queue. Time is expressed in milliseconds. in seconds. it is not evaluated as idle.5 CONFIGURATION AND ADMINISTRATION GUIDE 112 XML configuration files reference Contained elements Access (Logging) LogInterval The interval at which the server logs checkpoint events. FlushOnData. The default is 600 seconds (10 minutes). JSEngine. Example <MaxAppIdleTime>600</MaxAppIdleTime> See also Process.

See also MaxDuration. Setting the value 0 disables recording. DuplicateDir. By default. but cannot exceed the MaxDurationCap set by the ISP. RollOver MaxDuration Specifies the maximum duration. Example <MaxCores>0</MaxCores> See also LifeTime. For more information on setting the maximum number of core processes. It is only applicable in edge servers. This element allows ISPs to host applications for customers and ensure that no customer abuses the MaxDuration limit. of a recorded file. See also MaxDurationCap.5 CONFIGURATION AND ADMINISTRATION GUIDE 113 XML configuration files reference MaxBufferRetries Specifies the maximum number of attempts to start buffering stream data.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default value is -1. see “Configure how applications are assigned to server processes” on page 16. MaxSize (Recording) MaxDurationCap Specifies the cap on the maximum duration (in seconds) of a recorded file. For example. MaxSizeCap. The value 0 disables recording. This configuration tag prevents the server from indefinitely trying to buffer data that is never delivered by the origin server. CachePrefix. CacheUpdateInterval MaxCores The value of this element determines how many core processes can exist for an application. The value -1 means there is no maximum duration. The default value is -1. The default value of 128 is sufficient in most cases. Note: The F_STREAM_RECORD_MAXDURATION field in the Authorization plug-in can override this value. a customer can set any MaxDuration for their applications. Setting the value -1 removes the maximum duration cap. in seconds. the MaxCores function is disabled. MaxSizeCap. Note: The F_STREAM_RECORD_MAXDURATION field in the Authorization plug-in can override this value. Example <MaxBufferRetries>128</MaxBufferRetries> See also StorageDir. Set this parameter when you deploy a DVR application to prevent the disk from exceeding its capacity. MaxSize (Recording) . The default value is zero. Values set in the MaxDuration element or in Server-Side ActionScript cannot exceed this value.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. the server only performs GC when the JS engine is not busy. NetConnection MaxFailures The value of this element determines the maximum number of core process failures that can occur before a core process is disabled. which can happen when a faulty core consumes all CPU resources by repeatedly launching itself. Once the core processes are disabled. Having a time lag for recovery avoids a denial-of-service action. You can set the value in the Vhost. MaxTimeOut (JSEngine). This element determines the frequency of the garbage collection process. the server forces a GC when the skip count exceeds the value in MaxGCSkipCount.xml file by default. The default value is 5 seconds.FileObject.xml file to override the value set in the Vhost. Example <MaxInitDelay>5</MaxInitDelay> Example SWFVerification .xml file to override the value set in the Server. You can set the value in the Application. Example <MaxFailures>2</MaxFailures> See also Scope. the server does not launch a core process until some minimum recovery time has elapsed. Distribute. See also AutoCloseIdleClients MaxInitDelay The maximum number of seconds used to process SWF files. so in some cases you must force the server to perform GC regardless of the JS engine state. By default. If MaxGCSkipCount is set to 0.xml file. the server forces a GC regardless of the JS engine state. RecoveryTime MaxIdleTime The maximum time a client can be idle before the server closes the connection.xml file. XMLSocket.5 CONFIGURATION AND ADMINISTRATION GUIDE 114 XML configuration files reference MaxGCSkipCount Specifies the maximum number of times that the server will skip garbage collection (GC) when the JS engine is busy. If MaxGCSkipCount is set to a positive value. ScriptLibPath. the JS engine does not necessarily perform GC when it is busy. However. This value is set in the Server. LifeTime. Example <MaxGCSkipCount>-1</MaxSGCSkipCount> See also RuntimeSize.

UserAgent MaxPendingDebugConnections Specifies the maximum number of pending debug connections. (If the number is set to 0. Otherwise. AutoCommit. AccumulatedIFrames. If the injection time is larger than MaxLatency. Access. of incoming messages in a live stream.) Once the specified number is reached. MaxPropertySize MaxPropertySize The maximum size in bytes for each property of a shared object. When a server-side script injects a data message into a live stream. the server adds the time difference between the last message time and the injection time to the timestamp of the data message.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <MaxProperties>-1</MaxProperties> See also StorageDir. The default value is 500. ResyncDepth. the oldest pending debug connection is rejected to create space.5 CONFIGURATION AND ADMINISTRATION GUIDE 115 XML configuration files reference MaxLatency The maximum latency. The minimum value is 0. use -1. use -1. the timestamp is the last message time. See also Live (StreamManager) MaxMessageSizeLosslessVideo Specifies the maximum size of messages for screen-sharing packets. The default is 50. Example <MaxPendingDebugConnections>50</MaxPendingDebugConnections> See also AllowDebugDefault MaxProperties The maximum number of properties for each shared object. LockTimeout. debugging connections are disabled. in milliseconds. Example <MaxPropertySize>-1</MaxPropertySize> . Example <MaxMessageSizeLosslessVideo>0</MaxMessageSizeLosslessVideo> See also OutChunkSize. To specify unlimited. this setting determines the timestamp of the message. DuplicateDir. To specify unlimited size.

5 CONFIGURATION AND ADMINISTRATION GUIDE 116 XML configuration files reference See also StorageDir. MaxQueueDelay. MaxQueueSize. See also Queue. AutoCommit. This setting prevents the buffer from growing too large and should be set larger than the total size of intermediate frames between keyframes.Last updated 3/2/2010 FLASH MEDIA SERVER 3. in bytes. in milliseconds. AggregateMessages (Queue) MaxRate Specifies the maximum rate in Kbps at which the server sends data to the client. The default number of samples is 4. the server clears the messages. ResyncDepth. The default value is 4096. A default value of -1 means the size of intermediate frames is unlimited. AggregateMessages (Queue) MaxQueueSize Specifies how often the server will flush the message queue. FlushOnData. Example <MaxSize>-1</MaxSize> . DuplicateDir. The default value is 500 milliseconds. See also Audio MaxSize (AccumulatedIFrames) Specifies the maximum size. in kilobytes. MinBufferTime (Live) MaxSamples Specifies how many sound samples can be combined into one message. Example <MaxRate>-1</MaxRate> See also DataSize. FlushOnData. of intermediate frames that a live stream can hold in the buffer. MaxProperties MaxQueueDelay Specifies how often the server will flush the message queue. A value of 0 disables queuing. LockTimeout. If the buffer size is larger than MaxSize. The buffer contains a history of the video messages up to the last keyframe. The default value of -1 sends the data at whatever rate is necessary to measure bandwidth without throttling. This enables clients to catch up to the latest message even if they join between keyframes. See also Queue.

The value -1 means there is no maximum size. of a recorded file. in kilobytes. Example <MaxTime>-1</MaxTime> . This setting prevents the buffer from growing too large and should be set larger than the keyframe interval. MaxDuration. MaxBufferRetries MaxTime Specifies the maximum duration. The buffer contains a history of the video messages up to the last keyframe. CacheUpdateInterval. of a recorded file. a customer can set any MaxSize for their applications.5 CONFIGURATION AND ADMINISTRATION GUIDE 117 XML configuration files reference See also Subscribers. of intermediate frames that a live stream can hold in the buffer. Set this parameter when you deploy a DVR application to prevent the disk from exceeding its capacity. This enables clients to catch up to the latest message even if they join between keyframes. See also MaxSizeCap. The default value of -1 means the duration is unlimited. GC occurs during the application GC interval. For example. The value 0 disables recording. Note: The F_STREAM_RECORD_MAXSIZE field in the Authorization plug-in can override this value. The default value is -1. the server clears the messages. If the duration in the buffer is larger than the MaxTime. LoCPU.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MaxDurationCap MaxSizeCap Specifies the maximum size cap. See also MaxSize (Recording). DuplicateDir. Note: The F_STREAM_RECORD_MAXSIZE field in the Authorization plug-in can override this value. The value 0 disables recording. but cannot exceed the MaxSizeCap set by the ISP. The default value is -1 (unlimited). in seconds. in kilobytes. HiCPU MaxSize (Recording) Specifies the maximum size. This element allows ISPs to host applications for customers and ensure that no customer abuses the MaxSize limit. MaxDuration. Example <MaxStreamsBeforeGC>-1</MaxStreamsBeforeGC> See also StorageDir. MaxDurationCap MaxStreamsBeforeGC Specifies that garbage collection (GC) should be forced if the stream list grows over the set value. The value -1 means there is no maximum size. The default value is -1. CachePrefix.

The default time is 60 seconds. ScriptLibPath. in seconds. Example <MaxUnprocessedChars>4096</MaxUnprocessedChars> See also XMLSocket MaxWait This element specifies the number of seconds to wait before the server sends data to the client. MaxGCSkipCount. FileObject. NetConnection MaxTimeOut (Connections) This element defines the maximum time for a transfer to be completed. In a production environment. NetConnection MaxUnprocessedChars Specifies how much data can be received from an XML server (without receiving an end tag) before XMLSocket closes the connection. the risk of aborting correctly functioning operations increases.Last updated 3/2/2010 FLASH MEDIA SERVER 3. . then the script is evaluated as a runaway script and its execution is terminated. This setting may be useful in a debugging environment. XMLSocket. Operations such as DNS lock-ups may take more time. ScriptLibPath. but that number cannot exceed the number specified in this element. but it also forces the client to wait longer.FileObject. XMLSocket. after the applications and scripts have been thoroughly tested.5 CONFIGURATION AND ADMINISTRATION GUIDE 118 XML configuration files reference See also RuntimeSize. If its execution takes longer than the maximum allowed time. Example <MaxTimeOut>0</MaxTimeOut> See also RuntimeSize. If the value of this element is too low. you should set this element to a more realistic value that does not impose limits on the time scripts take to execute. Interface MaxTimeOut (JSEngine) The maximum time. This can be overridden by each XMLSocket by specifying the property XML. The default value is 0 and no checks are performed to detect runaway scripts. Setting a maximum time to execute a script prevents infinite looping in scripts. Example <MaxTimeOut>60</MaxTimeOut> See also Reuse. a script can take to execute a JavaScript (Server-Side ActionScript) function.maxUnprocessedChars. MaxGCSkipCount. Increasing this number provides a more accurate bandwidth figure.

Example <MinGoodVersion>0</MinGoodVersion> . The server will use the entry for the MIMEType element only when it is unable to determine the MIME type from the incoming requests. DataSize MimeType Specifies the default MIME (Multi-purpose Internet Mail Extensions) type header sent on tunnel responses. which allows the current and all future versions. Example <MinBufferTime>2000</MinBufferTime> See also Recorded MinGoodVersion Specifies the minimum accepted version of SWF verification allowed by the server.5 CONFIGURATION AND ADMINISTRATION GUIDE 119 XML configuration files reference Example <MaxWait>4096</MaxWait> See also MaxRate. Example <MimeType>application/x-fcs</MimeType> See also IdleAckInterval. The default value is 0. The value cannot be set below this by Flash Player. IdlePostInterval. WriteBufferSize MinBufferTime (Live) Specifies the default buffer length in milliseconds for the live audio and video queue. The server generally uses the MIME type specified by the incoming requests.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <MinBufferTime>2000</MinBufferTime> See also MaxAudioLatency MinBufferTime (Recorded) Specifies the default buffer length in milliseconds for audio and video.

The default value is 64.Last updated 3/2/2010 FLASH MEDIA SERVER 3.264 or any other pipelined codec need messages to begin playback. The Duration element nested within this container determines whether or not the server is notified when an audio transmission ending on a stream is encountered.5 CONFIGURATION AND ADMINISTRATION GUIDE 120 XML configuration files reference See also SWFFolder. Recorded. This setting ensures that regardless of the buffer setting there are enough messages to begin playback quickly. The elements nested within this container configure live and recorded audio. The default is AMF3. Streams that use H. UserAgentExceptions MinQueuedVideo The minimum number of video messages to queue at the start of a stream. The element nested within this container specifies object encoding to use for SSAS NetConnection. . See also Server MsgQueue Container element. The default can be overridden for each individual NetConnection by setting the NetConnection. This can be AMF0 or AMF3. Example <NotifyAudioStop enabled="false"></NotifyAudioStop> Contained elements Duration ObjectEncoding Specifies the default object encoding to use for SSAS NetConnection. Server NetConnection Container element. Setting this value to less than 64 may cause content with a low FPS to delay before starting.objectEncoding property to either 0 for AMF0 or 3 for AMF3. Contained elements Live (MsgQueue). Contained elements ObjectEncoding NotifyAudioStop Container element.

the chunk setting is capped at 1024 bytes. SendDuplicateOnMetaData Password Specifies the password for connecting to the proxy. HTTPTunnel. Password. MaxMessageSizeLosslessVideo OverridePublisher Deprecated. see the PublishTimeout element. Tunnel. Port. MsgQueue. Type. Example <OverridePublisher>true</OverridePublisher> See also Audio. The server breaks stream content into chunks of this size. If the chunk setting is larger than these clients can support. See also Host. If set to true. Note that older clients might not support chunk sizes larger than 1024 bytes. add application logic to avoid stream name collision. Example <OutChunkSize>4096</OutChunkSize> See also Bandwidth. SendDuplicateStart. Live (StreamManager). This can have a minimum value of 128 bytes and a maximum value of 65536 bytes. The default value is false. Username .5 CONFIGURATION AND ADMINISTRATION GUIDE 121 XML configuration files reference Example <ObjectEncoding>AMF3</ObjectEncoding> See also NetConnection OutChunkSize Specifies the RTMP chunk size in bytes to use in all streams for this application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. BandwidthCap. Tunnel. BandwidthDetection. Username Port Specifies the proxy port to connect to if the port is not specified as part of the host in the Host element. Larger values reduce CPU usage but cause larger writes that can delay other content on lower bandwidth connections. The default value is 4096. Specifies whether a second client is able to take over the ownership of a live stream when the stream is already published by another client. See also Host. Type.

Username. RecoveryTime. the server sends messages through multiple channels and prioritizes messages based on the message type. as follows (where 1 has the highest priority): 1 Data 2 Audio 3 Video See also Server Process Container element. This setting is relevant for multi-point publishing. the value of Distribute can be vhosts. Distribute LifeTime MaxFailures RecoveryTime Contained elements Scope. Distribute. prioritization is set to false. The elements nested within this container determine how a core process is managed. The elements nested within this container configure the HTTP Proxy settings. if the value of Scope is adaptor.5 CONFIGURATION AND ADMINISTRATION GUIDE 122 XML configuration files reference Prioritization Specifies whether outgoing messages are prioritized by message type when sending across a server-to-server connection. or clients). Messages are sent out through one channel and all messages have the same priority. Tunnel. The value for this element determines the maximum number of core process failures that can occur before a core process is disabled. If the value is set to true. By default. which contain instances. apps. Specifies the recovery time for a core. Password . Value Scope Description Specifies the level at which application instances are assigned to core processes.Last updated 3/2/2010 FLASH MEDIA SERVER 3. which contain clients. Port. Specifies the lifetime of core processes. Specifies how to distribute application instances to processes. LifeTime. which is the correct setting to avoid possible latency when server-side NetStream objects are used to publish messages to remote servers. Process rollover happens only when the Scope element is set to inst. insts. Contained elements Host. Distribution may be turned off by setting numproc to 0 or 1. The following table lists descriptions of the contained elements. MaxFailures. which contain applications. The value of the Distribute tag must be a scope that is lower in order than the value in the Scope tag (for example. Type. Scopes have an enclosing relationship with a strict ordering: adaptors contain virtual hosts. Proxy Container element.

5 CONFIGURATION AND ADMINISTRATION GUIDE 123 XML configuration files reference PublishTimeout Specifies how long in milliseconds the server waits to receive a response from a publisher when another client tries to publish to the same stream. The elements nested within this container specify the duration and file size of files recorded by the server. When a client requests to play a stream. FlushOnData. A message queue is used to buffer incoming messages from the publisher so that the server can send messages in chunks to the subscribers. The element nested within this container specifies the ratio of buffer length used by the server-side stream to the live buffer. You can remap the stream to c:\video1\myStream.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MaxSize (Recording). QualifiedStreamsMapping Enables mapping of virtual stream paths to different physical locations. set the enabled attribute to false. You can map the stream differently for each client in the F_STREAM_PATH property of your Authorization plug-in code. Contained elements MinBufferTime (Recorded) Recording Container element. contains elements that configure the settings of the message queue. Flash Media Server pings the first publisher and waits to receive a response. Contained elements MaxDuration. Queue Container element. If the first publisher fails to respond within the time specified in this tag. For example. This tag is applicable when using the Authorization plug-in.flv for client 2. MaxSizeCap . MaxDurationCap. If a client tries to publish to the same live stream that is being published by another client.flv for client 1 and c:\video2\myStream. disable this setting by setting the value of the tag to -1. Contained elements MaxQueueSize. You can disable queuing so that individual messages are immediately sent to subscribers. the server allows the second publisher to take over the live stream. The default value is 2000 milliseconds. To prevent the server from pinging the first client. To disable queuing. This tag replaces the OverridePublisher tag. an E_FILENAME_TRANSFORM event occurs in the Authorization plug-in.flv. AggregateMessages (Queue) Recorded Container element. suppose client 1 and client 2 both request to play myStream. MaxQueueDelay.

Example <Reuse>true</Reuse> See also MaxTimeOut (Connections). Max. The shared object is resynchronized when its version number is greater than the head version minus the current version. The recovery time for a core process is specified. Distribute.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MaxPropertySize Reuse This element configures whether or not the server explicitly closes the HTTP connection after each transfer. Example <RecoveryTime>300</RecoveryTime> See also Scope.5 CONFIGURATION AND ADMINISTRATION GUIDE 124 XML configuration files reference RecoveryTime Specifies the recovery time for a core. The server will not launch a core process until some minimum recovery time has elapsed. Example <ResyncDepth>-1</ResyncDepth> See also StorageDir. Contained elements Allow. The elements nested within this container configure the settings for redirecting the HTTP connection. The time lag for recovery can avoid a denial-of-service action. The default is to reuse connections. MaxFailures Redirect Container element. Interface . AutoCommit. Set this to false to use a new connection after every transfer. UnrestrictedAuth ResyncDepth This element instructs the server to resynchronize a shared object file. in seconds. DuplicateDir. A value of 0 disables any checking for process failures. MaxProperties. which happens when a faulty core process consumes all CPU time by repeatedly launching itself. Note: Loading an application with Flash Media Administration Server tools or APIs bypasses this check. LifeTime. The default value of -1 sends a resynchronized version of the file with every connection. LockTimeout.

Example <RuntimeSize>1024</RuntimeSize> See also MaxGCSkipCount. which is the equivalent of 1 megabyte. The lower and upper limits on the size of the JavaScript engine are 10 kilobytes and 51200 kilobytes (50 megabytes). If you create a new script object that will cause the runtime size of the application instance to exceed the value of this element. For more information on rollover processes. Starting Flash Media Server starts a process called FMSMaster. XMLSocket. If your application consumes a significant amount of memory. Settings in an Application. see “Configure how applications are assigned to server processes” on page 16. In most cases. The master process is a monitor that starts core processes when necessary. Example <Rollover>0</RollOver> See also MaxCores RuntimeSize Specifies the maximum size in kilobytes that a particular application instance can use to run Server-Side ActionScript code before the server removes unreferenced and unused JavaScript objects. an out-ofmemory error occurs and the application instance is shut down. Only one master process can run at a time.Last updated 3/2/2010 FLASH MEDIA SERVER 3. NetConnection Scope This element determines the level at which application instances are assigned to core processes. The default value applies when the engine size lies outside of these limits. a new core is instantiated.5 CONFIGURATION AND ADMINISTRATION GUIDE 125 XML configuration files reference RollOver Specifies how many seconds a core process can be in use before the server creates a new core process. The default size is 1024 kilobytes.exe (Windows) fmscore (Linux). Application instances run in processes called FMSCore. All subsequent connections are directed to the new core. MaxTimeOut (JSEngine).xml file in an application’s folder apply only to that application. The default value is 0 (seconds). The following table lists the values available for the Scope element. After the time limit for a core is reached.exe (Windows) or fmsmaster (Linux). increasing the engine size to 30720 (30 MB) is sufficient to run intensive Server-Side ActionScript operations. but many core processes can run at the same time. The rollover functionality is disabled by default. you must increase the engine size.xml file in a virtual host folder apply to all applications running in that virtual host. . Settings made in an Application. FileObject. ScriptLibPath.

Each application instance runs in its own process. The server first looks in the location where the main. NetConnection SendDuplicateOnMetaData Specifies whether an onMetaData message is sent at the beginning of video files when the play and seek commands are called.asc file with the load() method. The default value is true. FileObject. Example <Scope>vhost</Scope> See also Distribute. in sequence. MaxGCSkipCount.JS_SCRIPTLIBPATH}</ScriptLibPath> See also RuntimeSize.asc or application_name. The following values are available: • • • true sends onMetaData for the play and seek commands. once falls back to FMS 1. All instances of a single application run together in a process. false sends onMetaData for play only. RecoveryTime ScriptLibPath This element is a list of paths delimited by semicolons instructing the server where to look for server-side scripts loaded into a main. MaxFailures.x behavior and sends onMetaData based on the start position. Example <ScriptLibPath>${APP. LifeTime. If you choose this value. the list of paths specified in this element.asc file is located. regardless of the command.5 CONFIGURATION AND ADMINISTRATION GUIDE 126 XML configuration files reference Value adaptor vhost app inst Description All application instances in an adaptor run together in a process. These paths are used to resolve a script file that is loaded with the load API.Last updated 3/2/2010 FLASH MEDIA SERVER 3. All application instances in a virtual host run together in a process. Example <SendDuplicateOnMetaData>true</SendDuplicateOnMetaData> See also SendDuplicateStart . If no onMetaData is found at the start position. MaxTimeOut (JSEngine). If the script file is not found there. you must also set the Distribute numprocs attribute to a value greater than 1. no onMetaData is sent. This is the default value. XMLSocket. the script engine searches.

The Interval element nested within this container configures the settings for sending silent messages. .5 CONFIGURATION AND ADMINISTRATION GUIDE 127 XML configuration files reference SendDuplicateStart Specifies whether status message NetStream. but cannot exceed the caps set by the ISP. The values in the Bandwidth section can be overridden.Start is sent for all commands. only the play command receives the start message. a customer can set any bandwidth limit for their applications.Play. which specifies whether to prioritize outgoing messages for server-to-server connections. Contained elements BufferRatio. If set to false. Example <ServerToClient>250000</ServerToClient> See also ClientToServer (Bandwidth) ServerToClient (BandwidthCap) Specifies the maximum bandwidth in bytes per second that the server can use for sending data downstream to the client. OverridePublisher SendSilence Container element.Last updated 3/2/2010 FLASH MEDIA SERVER 3. and Prioritization. Example <SendDuplicateStart>true</SendDuplicateStart> See also SendDuplicateOnMetaData. Contains two elements: BufferRatio. The default bandwidth is 250. seek. including play. You can configure this value in the Bandwidth section of XML and in the BandwidthCap section of XML.000 bytes per second. and unpause. Contained elements Interval Server Container element. This allows ISPs to host applications for customers and ensure that no customer abuses the bandwidth limit. For example. but the values in the BandwidthCap section are not. Prioritization ServerToClient (Bandwidth) Specifies the bandwidth in bytes per second that the server can use for sending data downstream to the client. which specifies the ratio of the buffer length used by the server-side stream to the live buffer.

but cannot exceed the caps set by the ISP. leave this value false. To use dynamic. multibitrate streaming. See also Live (StreamManager) StorageDir Specifies the physical location where shared objects or streams are stored. The default value is false. The elements nested within this container configure the Shared Object Manager setting of an application. ResyncDepth.000. a customer can set any bandwidth limit for their applications.5 CONFIGURATION AND ADMINISTRATION GUIDE 128 XML configuration files reference The default bandwidth is 10. For example. This allows ISPs to host applications for customers and ensure that no customer abuses the bandwidth limit. LockTimeout. Contained elements StorageDir. Set this element only if the files for shared objects or recorded streams must be stored in a location other than the application directory. The elements in this section configure the Stream Manager settings for this application.Last updated 3/2/2010 FLASH MEDIA SERVER 3. You can configure this value in the Bandwidth section of XML and in the BandwidthCap section of XML. By default the physical location is not set. MaxPropertySize StartClockOnPublish Specifies whether the stream time is sensitive to the difference between publish time and the arrival of the first stream message. AutoCommit. Example <ServerToClient>10000000</ServerToClient> See also ClientToServer (BandwidthCap) SharedObjManager Container element. DuplicateDir. Example <StorageDir>C:\myapp\sharedobjects\</StorageDir> <StorageDir>C:\myapp\streams\</StorageDir> See also DuplicateDir StreamManager Container element. . MaxProperties.000 bytes per second. but the values in the BandwidthCap section can not. The values in the Bandwidth section can be overridden.

MaxSamples SWFFolder Specifies a single folder or a semicolon-delimited list of folders containing copies of client SWF files. The server compares these SWF files to client SWF files connecting to applications on the server. ThrottleBoundaryRequest. The default number of subscribers is 8. Example For an application named myApplication located at C:\applications\. MaxDurationCap Subscribers This element instructs the server to combine sound samples only if there are more than the default number of subscribers to that stream. MaxDuration. Verifying SWF files is a security measure that prevents someone from creating their own SWF files that can attempt to stream your resources.5 CONFIGURATION AND ADMINISTRATION GUIDE 129 XML configuration files reference Contained elements StorageDir. See also MinGoodVersion. MaxSize (Recording). Specifies how the server verifies client SWF files before allowing the files to connect to an application. MaxBufferRetries. DirLevelSWFScan. When streaming through a proxy server. see “Verify SWF files” on page 19. CacheUpdateInterval. CachePrefix. Audio. SendDuplicateStart. MaxStreamsBeforeGC. ThrottleDisplayInterval. MaxSizeCap. For more information. Cache ThrottleBoundaryRequest Controls the maximum number of concurrent boundary requests per recorded stream. DuplicateDir. EnhancedSeek. UserAgentExceptions SWFVerification Container element. ThrottleLoads. Use a semicolon to separate multiple directories. FirstHashTimeout.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Contained elements SWFFolder. KeyFrameInterval. Note: SWF files connecting to Flash Media Administration Server cannot be verified. Live (StreamManager). authenticating SWF files should be placed in C:\applications\myApplication\SWFs. UserAgentExceptions. SWF files located under an instance named folder can only connect to that specific instance. the boundary information about video segments are sent to the proxy server by request. MaxInitDelay. HiCPU. SendDuplicateOnMetaData. The default value of the SWFFolder element is the application's folder appended with /SWFs. MinGoodVersion. Example <Subscribers>8</Subscribers> See also LoCPU. . FinalHashTimeout.

ThrottleLoads ThrottleDisplayInterval Controls the interval at which the server displays the throttle queue length. The default value is 64. which means the server displays the message 1 out of 64 times when the throttle queue is full. Port. Password TTL Specifies in minutes how long each SWF file remains in the cache. Type. ThrottleLoads ThrottleLoads Controls the maximum number of concurrent segment loads per recorded stream. The default value is 8.Last updated 3/2/2010 FLASH MEDIA SERVER 3. video segments are sent to the proxy server by request. UpdateInterval . Username. Example <ThrottleBoundaryRequest enable="false">8</ThrottleBoundaryRequest> See also ThrottleDisplayInterval. ThrottleDisplayInterval Tunnel Specifies whether or not to tunnel all operations through a given HTTP proxy. Example <ThrottleLoads enable="true">8</ThrottleLoads> See also ThrottleBoundaryRequest. Example <ThrottleDisplayInterva>64</ThrottleDisplayInterval> See also ThrottleBoundaryRequest.5 CONFIGURATION AND ADMINISTRATION GUIDE 130 XML configuration files reference The default value is 8. The default value is 1440 minutes (24 hours). The default setting is false. When streaming through a proxy server. Example <Tunnel>false</Tunnel> See also Host. See also Cache.

Sending the user name/password combination is useful only if the Allow element permits redirections. Max UpdateInterval Specifies the maximum time in minutes to wait for the server to scan the SWF folders for updates when there is a miss in the cache. Password UnrestrictedAuth A Boolean value that determines whether or not to allow sending the user name/password combination with each HTTP redirect.28. Contains an element that specifies a user agent that should be an exception to authentication. The value for this element can be HTTP or SOCKS5. Username. Example <UserAgentExceptions> <Exception to="WIN 9. See also Cache. Use the to and from attributes to indicate the lowest and highest versions to except.0. Example <Type>HTTP</Type> See also Host. Example <UnrestrictedAuth>true</UnrestrictedAuth> See also Allow. The default setting is true. Tunnel.28.0"</Exception> </UserAgentExceptions> . Port. The default is HTTP. Contained elements Bits UserAgentExceptions Container element.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 131 XML configuration files reference Type Specifies the type of proxy being connected to. The settings for clients vary according to whether Flash Player platform is Windows or Macintosh. Setting the value 0x01 will configure the player and platform for silent messages.0" from="WIN 9.0. TTL UserAgent Container element. The default value is 5 minutes.

set the enable attribute to true. Example <Verbose>false</Verbose> See also HTTP1_0. the configuration to allow access to sample those streams is as follows: <VideoSampleAccess enabled="true">low_quality. Port. By default. While you can also enable access through Server-Side ActionScript. For more information. To enable it. see comments in the Application. Tunnel. The folder path is restricted to the application’s streams folder or folders. so do not use absolute paths in the list of folders.Last updated 3/2/2010 FLASH MEDIA SERVER 3. When this element is enabled. this element allows access to the data without requiring Server-Side ActionScript. Proxy. See also Host. .5 CONFIGURATION AND ADMINISTRATION GUIDE 132 XML configuration files reference Contained elements Exception Username Specifies the user name for connecting to the edge. Type. Example If an application is configured to store streams in folders C:\low_quality and C:\high_quality. specify a list of semicolon-delimited folders to which client applications have access.high_quality</VideoSampleAccess> See also AudioSampleAccess VirtualDirectory Specifies virtual directory mappings for Server-Side ActionScript File objects. Redirect VideoSampleAccess Allows the client application to access the raw uncompressed video data in a stream. To enable access to all video data streamed by the server. You can also override this element with the Access plug-in or Server-Side ActionScript. specify / in the tag. Connections. this element is disabled. all clients can access the video data in streams in the specified folders.xml file and “Mapping virtual directories to physical directories” on page 35. In the tag. Password Verbose This element determines whether or not the server outputs verbose information during HTTP operations.

MimeType XMLSocket Container element. The default size is 16 KB. . The default location of the log files is in the /logs directory in the server installation directory.You can edit this file to add or change configuration information. Note: Adobe recommends that you do not change the value of this element. WriteBufferSize Specifies in kilobytes the size of the write buffer. This can be overridden by each XMLSocket by specifying the property XML. Contains an element that specifies how much data can be received from the XML server (without receiving an end tag) before XMLSocket closes the connection. Example <WriteBufferSize>16</WriteBufferSize> See also IdlePostInterval. Example <XMLSocket> <MaxUnprocessedChars>4096</MaxUnprocessedChars> </XMLSocket> Contained elements MaxUnprocessedChars Logger. including the location of the log files.xml file The Logger.maxUnprocessedChars. IdleAckInterval.5 CONFIGURATION AND ADMINISTRATION GUIDE 133 XML configuration files reference Example <VirtualDirectory>virtual_dir_name.xml contains the elements and information used to configure log files.xml file is located at the root level of the /conf directory and is the configuration file for the logging file system.Last updated 3/2/2010 FLASH MEDIA SERVER 3. but that number cannot exceed the number specified in this element. Logger.physical_dir_path</VirtualDirectory> See also FileObject WindowsPerAck Controls how many messages can be sent before receiving an acknowledgement from the other end.

The elements nested within this container configure the Access log settings. Contained elements LogServer. Field names displayed in the log file are in English. To see the element structure and default values. Time. FileName. The elements nested within this container configure the admin log settings. If the name of the recorded stream is in a language other than English. the name is written in that language. Contained elements Directory. Access Container element. Note: Log file rotation cannot be disabled.xml file installed in the RootInstall/conf/ folder. even if the server is running on an English-language operating system. in the Access. Fields. however. choose a large maximum size and a long maximum duration for the log files. Directory. see the Plug-in Developer Guide at www. .com/go/learn_fms_plugindev_en. see the Logger. To effectively turn off rotation. Time. Directory. FileName. For more information. QuoteFields.log file. Rotation. The Logging section in the Server. the columns x-sname and x-suri-stem show the name of the stream. Some content within the log file. Events. EscapeFields AuthMessage Container element.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Contained elements LogServer Application Container element. The elements in this section configure the AuthEvent log file settings. Delimiter.xml file enables or disables the log files. may be in another language. For example. Contained elements LogServer. Rotation AuthEvent Container element.5 CONFIGURATION AND ADMINISTRATION GUIDE 134 XML configuration files reference Log files are written in English.adobe. The elements nested within this container configure the Application log file settings. depending on the filename and the operating system. Time admin Container element.

Rotation core Container element. The elements nested within this container configure the core log settings. By default. For more information. Time. The elements in this section configure the diagnostic log file. Contained elements LogServer Delimiter Specifies whether or not to use a single quotation mark (') as a delimiter to separate the fields in the log file.xml file. QuoteFields Diagnostic Container element. since # is used as the comment element in the Logger. Contained elements Directory. EscapeFields. Contained elements Directory.Last updated 3/2/2010 FLASH MEDIA SERVER 3.adobe.LOGDIR}</Directory> . see the Plug-in Developer Guide at www. the log files are located in the logs directory in the server installation directory. The use of the number sign (#) as a delimiter is not recommended. A delimiter is used to separate the fields in the log file.com/go/learn_fms_plugindev_en. Example <Directory>${LOGGER.) • colon (:) • hyphen (-) See also Directory.5 CONFIGURATION AND ADMINISTRATION GUIDE 135 XML configuration files reference The elements in this section configure the AuthMessage log file settings. Rotation Directory Specifies the directory where the log files are located. Time. The following characters are not allowed as delimiters: • triple quotation marks (''' ) • paired double quotation marks ("") • comma (.

. EscapeFields. Time. This element controls whether or not the fields in the log file are escaped when unsafe characters are found. the tilde (~). FileName. QuoteFields edge Container element. square brackets ([ ]).Last updated 3/2/2010 FLASH MEDIA SERVER 3. Rotation DisplayFieldsHeader Formatting element. Rotation. bar (|). For a list of events that are recorded in the Access log file. By default. The keyword * instructs the server to log all events. and the apostrophe (' ). Example <EscapeFields>enable</EscapeFields> See also LogServer. open or closed curly braces ({ }). Contained elements LogServer EscapeFields Formatting element. open or closed angle brackets (< >). The elements nested within this container configure the edge log settings. see “Access events defined in access logs” on page 57. the carat (^). a double quotation mark ("). Specify events in a semicolon-separated list. See also Fields Fields Specifies which fields for an event are logged in the Access log file. Directory. and QuoteFields Events Specifies the events written to the log file. Fields. it is set to enable. Example <DisplayFieldsHeader>100</DisplayFieldsHeader> See also Delimiter. This optional flag can be set to enable or disable. The unsafe characters are as follows: the space character. Specifies how many lines to write to the log file before repeating the field headers. The default line count is 100 lines. Delimiter. the number sign (#). the percent sign (%).5 CONFIGURATION AND ADMINISTRATION GUIDE 136 XML configuration files reference See also Time. Events.

Adobe recommends that you include the following fields in the fields to be logged: the type. Example access. The elements in this section configure the settings for the File plug-in log file settings. D represents the day of the month of the file’s creation. EscapeFields History Specifies the maximum number of log files to keep.log. The repetition of a letter represents the number of digits. Time. see “Fields in access logs” on page 59. Fields without data are left empty. For a list of fields associated with events in the Access log file. M represents the month of its creation. Events. M represents 4 (April). the formats D or DD are both allowed.log This example identifies version 43 of the access log file for October 30. category. and time fields. Y represents the year of its creation. The files are named access. Time. the format YYYY must be used. Schedule.5 CONFIGURATION AND ADMINISTRATION GUIDE 137 XML configuration files reference Fields are associated with the events found in the Access log file.02.03. QuoteFields. See also Events FileIO Container element. Not every field is associated with each event in the log file. Delimiter. The field specification is a semicolon-separated list of one or more fields associated with an event in the log file. The Access log filename includes a date stamp and version number.adobe. MM represents 04 (April). Contained elements Directory. and so on. access. The default number of files to retain is 5. date.01. Rotation FileName Specifies the name of the Access log file.log.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Note that there is no limit on the number of versions. the formats M or MM are both allowed.2007103043. Rename . Rotation.com/go/learn_fms_plugindev_en. For example. For more information. 2007.log. Fields. Directory. access. see the Plug-in Developer Guide at www. The keyword * specifies that all fields are to be logged. See also LogServer. N represents the version number of the file. Example <History>5<History> See also MaxSize.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <Maxsize>10240</MaxSize> See also Schedule. it is set to disable. or approximately 1 MB.xxx. LogServer Container element. ServerID.xml.xxx:1234</HostPort> See also ServerID. The default file size is 10240 KB. The Logger element is a container for all the other elements in Logger. This element can be set to enable or disable. Example <HostPort>xxx. Specifies whether or not to use quotation marks to surround those fields in the log file that include a space. Rename QuoteFields Formatting element. The elements nested in this section configure the server to send messages to a remote log server.xxx. The elements nested within this container configure the master log settings. DisplayFieldsHeader master Container element. History. . By default. Contained elements LogServer MaxSize Specifies the maximum log file size in bytes.5 CONFIGURATION AND ADMINISTRATION GUIDE 138 XML configuration files reference HostPort Specifies the IP and port of the log server. DisplayFieldsHeader Logger Root element. Contained elements HostPort.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. The elements in this section configure the rotation of the log files. There are two types of scheduling: daily rotation and rotation that occurs when the log exceeds a specified length. rotation occurs when the duration of the log exceeds a specified length. This occurs until the maximum history setting is reached. The log file with the lowest version number keeps the oldest log history.01. The duration is specified in minutes. <Schedule type="hh:mm"></Schedule> If the type attribute is duration.log is renamed application. Directory. History.log is renamed application. Examples <Rename>true</Rename> See also MaxSize. The log file with the highest version number keeps the oldest log history. application. Fields. Time. Rename .00. Rename Schedule Specifies the rotation schedule for the log files. If Rename is set to true. If Rename is set to false. Schedule.5 CONFIGURATION AND ADMINISTRATION GUIDE 139 XML configuration files reference Example <QuoteFields>disable</QuoteFields> See also LogServer. FileName. the server rotates the log files every 24 hours. The default is true. Schedule. History. History Rotation Container element. EscapeFields Rename Specifies a new name for log files when rotation occurs. a new log file is created with the next available version when rotation occurs. Events. <Schedule type="duration"></Schedule> See also MaxSize. Rotation. Delimiter. and application. the timestamp 00:00 causes the file to rotate every midnight.01. Contained elements MaxSize. <Schedule type="daily"></Schedule> If the type attribute is hh:mm. Examples If the type attribute is daily.02.log (and so on) when it is time to rotate the log files.log.

Contained elements MinIOThreads.xml file installed with Flash Media Server in the RootInstall/conf/ directory. MaxIOThreads. SocketTableSize. DisplayFieldsHeader Time The Timefield in a log file can be logged either in UTC (GMT) or local time. or local. Flash Media Administration Server and the active cores communicate over ACCP. the value of the ServerID element is the IP address of the server whose events are being logged.5 CONFIGURATION AND ADMINISTRATION GUIDE 140 XML configuration files reference ServerID By default.xml file is located at the root level of the conf directory.xxx. which in turn connects to Flash Media Server. The Access logs are located in the RootInstall\logs directory.xxx. Example <ServerID>xxx. Access Container element. Edits made in the Server. The elements nested within the Access container configure the Access log settings. see the Server.xml file The Server. The default is local time. To see the element structure and default values in Server. Contained elements Enable. See also Logging Server. gmt.xxx:1234</ServerID> See also HostPort. The elements nested within the ACCP container configure the Admin Core Communication Protocol (ACCP). The setting for the Time element can be used to override the server-wide configuration. Scope ACCP Container element. This protocol is also used for collecting performance metrics and issuing administrative commands to Flash Media Server cores. Valid values are utc. SocketOverflowBuckets . The Flash Media Administration Console connects to Flash Media Administration Server.xml.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file affect the entire server unless they are overridden in another configuration file.

foo. Allow.Last updated 3/2/2010 FLASH MEDIA SERVER 3. otherwise the element name is displayed as <elem name="x">. Example <AdminElem>true</AdminElem> See also Process.1. RTMP is the protocol used for communication between Flash Player and Flash Media Server. HostPort. 10. Select a profile to determine bandwidth. Example <Allow>x.5 CONFIGURATION AND ADMINISTRATION GUIDE 141 XML configuration files reference ActiveProfile Specifies the limits enforced by the server on each license key (set in the LicenseInfo element).60. The elements nested within the AdminServer container configure Flash Media Administration Server. The getActiveVHostStats()command allows administrators to query the statistics information for all active virtual hosts. This potential security risk can be managed by the Allow element. The default value is false. a client can connect to Flash Media Administration Server from any domain or IP address. Allow. See also Process. Mask. Deny.60</Allow> . By default. To display <elem name="x"> instead of <_x> in the HTTP command. Contained elements MinIOThreads.133. SocketOverflowBuckets AdminElem Specifies the format used to display an element name in an HTTP command. The keyword all can also be used. which means the element name is displayed as <_x>. Process.com. domain names. and full or partial IP addresses.com. SocketGC. Order. The getActiveVHost() command lists only the active virtual hosts. Deny. and other licensed limits. LicenseInfo Admin Container element. set the AdminElem element to true. CrossDomainPath Allow Specifies the administrator connections that are to be accepted. foo. connection. The elements nested within the Admin container configure the RTMP (Real-Time Messaging Protocol) for the fmsadmin process. AdminElem. MaxIOThreads. Permissible administrator connections are detailed as a comma-delimited list of host names. 10. Order AdminServer Container element. Contained elements RTMP (AdminServer). SocketTableSize.

which is also the minimum value for this element. depending on the type of content you are delivering. See also Playback AllowedVideoLag The number of seconds the server holds audio messages in the recording buffer while waiting for a video message. For example. You can tune the size of each cache. the server does not stream any AAC audio profiles that are not supported by Flash Player 10. Application Container element. and other) has its own cache.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml. if you are delivering audio-only content. To override this behavior. set this value to true. The default interval is 5 minutes. increase the AudioAutoBufferReadSize buffer. Each data type (audio. This lag allows the server to sort timestamps before flushing the buffer to disk when video is delayed. . video. To override this behavior.264 video profiles that are not supported by Flash Player 10. and decrease the VideoAutoBufferReadSize buffer. and other data in memory. See also Playback AllowAnyAVCProfile By default.5 CONFIGURATION AND ADMINISTRATION GUIDE 142 XML configuration files reference or <Allow>all</Allow> See also Deny. set this value to true. AudioAutoBufferReadSize The server caches F4V/MP4 video. Contained elements Enable ApplicationGC Specifies in minutes how often the server checks for and removes unused application instances. Caching data allows the server to make fewer disk reads and to perform better. Order AllowAnyAACProfile By default. the server does not stream any H. The Enable element nested within the Application container enables the Application log file. to achieve better disk performance. The default value is 5. An application is considered idle if it has no clients connected for longer than the amount of time specified in MaxAppIdleTime in Application. audio.

A client is active when it is sending or receiving data.xml file. the feature is disabled.xml file. To configure the closing of idle connections. Contained elements AuthMessage AutoCloseIdleClients Container element. (Subsequently. you can disable the feature for individual virtual hosts in the Vhost.xml configuration file apply to all clients connected to the virtual host. The Enable element nested within the AuthEvent container enables the logging of events from the Authorization plug-in. The default value is false.) Example <AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> Contained elements CheckInterval. Use AutoCloseIdleClients to specify how often the server should check for idle clients. you must enable the feature in the Server. The values defined in the Server. OtherAutoBufferReadSize AuthEvent Container element.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml files or for individual applications in Application. Contained elements Enable AuthMessage Container element.xml configuration file apply to all clients connected to the server.xml.xml values. the values defined in the Vhost. The Application. Once you enable the feature in the Server. MaxIdleTime . See also VideoAutoBufferReadSize. The server also writes a message such as “Client x has been idle for y seconds” in the core and event logs.xml values override the Vhost.xml file. The server closes the client connection to the server and writes a message to the access log. unless the values are defined in the Vhost.xml values. the server sends a status message to the NetConnection object (the client).xml file. The Enable element nested within the AuthMessage container enables the logging of messages from the Authorization plug-in. The Vhost. If the enable attribute is omitted or set to false. Determines whether or not to automatically close idle clients. The default value is 51200 bytes.xml values override the Server.5 CONFIGURATION AND ADMINISTRATION GUIDE 143 XML configuration files reference The minimum size is 1024 bytes. When a client has been idle longer than the maximum idle time (60 seconds by default). unless values are defined in the Application. Set the enable attribute to true to close idle clients.

See also TTL. The default value is false.5 CONFIGURATION AND ADMINISTRATION GUIDE 144 XML configuration files reference Cache Container element. UpdateInterval (Cache) CheckInterval Specifies the interval. You can disable checkpoints at the vhost and application level in the Vhost. You can also override the logging interval at the vhost and application levels. at which the server checks for active client connections. The following are available as checkpoint events: connect-continue.Last updated 3/2/2010 FLASH MEDIA SERVER 3. .xml files. The minimum and default value is 60 seconds. Set the enable attribute to true to turn on checkpoint events in logs. The elements nested within the Connector container configure the connector subsystem. A shorter interval results in more reliable disconnection times. Checkpoint events log bytes periodically from the start to the end of an event. You must enable checkpoint events at the server level in the Server. Example <CheckInterval>60</CheckInterval> See also Checkpoints Checkpoints Enables logging checkpoint events. but can also result in decreased server performance.xml and Application. in seconds. LogInterval Connector Container element. Contained elements HTTP. Contained elements CheckInterval. This element contains the enable attribute which you can set to true or false. Flash Media Server provides connectors that allow application scripts to connect to other Flash Media Servers or HTTP servers. Contains elements that configure the cache setting for SWF verification.xml file. and publish-continue. play-continue. A client is disconnected the first time the server checks for idle connections if the client has exceeded the MaxIdleTime value. RTMP (Connector) Content Enables operations in the current File plug-in on content (streams or SWF files). The value of true enables the operation on the specified content type and false disables it.

Enabled by default. The elements nested within the Core container configure the RTMP protocol for the FMSCore. A value of 0 disables the timeout check. Example <CoreGC>300</CoreGC> See also CoreExitDelay CoreTimeout Specifies the timeout value. in seconds. SocketTableSize. Example <Content type="Streams">true</Content> <Content type="SWF">false</Content> See also FilePlugin Core Container element. which you can set to the following values: • • Streams. Enables operations on SWF files. Disabled by default. in seconds. The default timeout is 30 seconds. an idle core is given to exit on its own before it is removed from the server. Enables stream file operations.5 CONFIGURATION AND ADMINISTRATION GUIDE 145 XML configuration files reference This element contains the type attribute. SWF. The default wait time is 20 seconds. SocketOverflowBuckets CoreExitDelay Specifies how much wait time. in seconds. Example <CoreExitDelay>60</CoreExitDelay> See also CoreGC CoreGC Specifies how often. to check for and remove idle or unused cores. Contained elements MinIOThreads. for detecting unresponsive cores. .Last updated 3/2/2010 FLASH MEDIA SERVER 3. This element is nested within the FilePlugin tag. Enable if you plan to use the File plug-in to retrieve SWF files for verification by the server. The default is 300 seconds. MaxIOThreads.exe process.

or the keyword all.1. how often the server monitors CPU usage.com.60</Deny> or <Deny>all</Deny> See also Allow. 10. Contained elements Enable . This element is nested within both the Server element and the AdminServer element. Order Diagnostic Container element. Example <Deny>x.Last updated 3/2/2010 FLASH MEDIA SERVER 3. in seconds.5 CONFIGURATION AND ADMINISTRATION GUIDE 146 XML configuration files reference Example <CoreTimeout>30</CoreTimeout> See also CoreGC CPUMonitor Specifies.133. The value cannot be set to less than 1 second.xml</CrossDomainPath> Deny Specifies administrator connections that should be ignored. The default interval is 1 second.com. This element lets you specify a list of domains from which a client can access the server.60. The default value is *. foo. Use it for both edge and administration server requests. The Enable element nested within the Diagnostic section enables the diagnostic log file. and full or partial IP addresses. Example <CPUMonitor>1</CPUMonitor> See also ResourceLimits CrossDomainPath Specifies an absolute path on the server to a cross-domain file.foo. 10. Example <CrossDomainPath>C:/Security/config/files/fms/crossdomain. domain names. which allows clients from all domains to access the server. The connections are specified as a comma-delimited list of host names.

The elements nested within the ECCP container configure ECCP (Edge Server-Core Server Communication Protocol). The directory containing the web server. MinEventQueueThreads. Specifying zero scans the parent folder and no subfolders. MaxIOThreads. . The parent folder is specified in the SWFFolder element. Contained elements MinIOThreads. See also SWFFolder ECCP Container element. Contained elements MinIOThreads.2. The elements nested within the EdgeCore container control the IPC (interprocess communication) message queue used by edge and core processes to communicate with each other. The elements nested within the Edge container configure the RTMP protocol for the fmsedge process. The elements nested within the Edge container configure resources for the fmsedge process.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default value is 1. which means that the server scans only one subfolder level. SocketOverflowBuckets Edge (ResourceLimits) Container element. Contained elements MaxEventQueueThreads. CoreTimeout Edge Container element. Specifying a positive value scans that number of subfolders. SocketTableSize. MaxIOThreads. Specifying a negative value scans all subfolders. Flash Media Server edge processes and Flash Media Server core processes use ECCP to migrate socket connections and to proxy connections that have not been migrated. SocketTableSize.5 CONFIGURATION AND ADMINISTRATION GUIDE 147 XML configuration files reference Directory Located in the Httpd container. DirLevelSWFScan Specifies the number of levels of subfolders within a parent folder to scan for SWF files. SocketOverflowBuckets. NumSchedQueues EdgeCore Container element. The default value is Apache2.

Aggregating messages increases server performance. AuthMessage. Setting the enabled attribute to false disables the File plug-in.Last updated 3/2/2010 FLASH MEDIA SERVER 3. false disables the logging process. Example <FileCheckInterval>120</FileCheckInterval> FileIO Container element. FileCheckInterval Located in the FLVCache container. MaxQueueSize Enable Server. The minimum value is 1 second.and FileIO logs. Note: This setting applies to playback of MP4/F4V files only. A value of true enables the logging process. A very large number means the server does not refresh the cache even when there is a file change. in seconds. FileIO EnableAggMsgs Located in the Playback container. Contained elements Enable FilePlugin Container element. The default value is true. Application. Application. There is no maximum value. Diagnostic. AuthEvent.5 CONFIGURATION AND ADMINISTRATION GUIDE 148 XML configuration files reference Contained elements HeapSize. . Do not change this value if you want to achieve the highest possible server performance. Example <Access> <enable>true</Enable> </Access> See also Access. The Enable element nested within the FileIO container enables logging from the File plug-in. how often the server reloads the video segment in the cache when there is a file change. AuthEvent. The default value is 120 seconds. Specifies. Diagnostic. AuthMessage. This element contains elements to configure file operations that are handled by the File plug-in.xml uses Enable elements in the Logging container to enable or disable the Access. The default value is true.

The range of this setting is from 0 (0%) to 1 (100%). MaxKeyframeCacheSize FLVCachePurge Located in the ResourceLimits container. The range of this setting is from 0 (0%) to 1 (100%). in which case virtual memory will also be used. The default setting is 0. The default setting is 0. Use this setting to configure the cache for optimal memory use. Specifies how often. When more free memory is available to a thread than the specified ratio. Specifies the maximum size of the recorded media cache. to remove unused files from the cache. .5%). the default value of 60 is used. If you are receiving “cache full” events in the core log file or want to increase the chance that streams will find the information needed in the cache.125 (12. Content FLVCache Container element. Contained elements FileCheckInterval. Specifies the percentage of the message cache to be consumed by the free list on a per-thread basis. The recorded media cache size is specified as a percentage of the total available RAM on the system. and SegmentsPool containers.Last updated 3/2/2010 FLASH MEDIA SERVER 3. FLVCacheSize Located in the ResourceLimits container. decrease the size of the cache. The minimum value is 1 minute. The default setting for the cache size is 10 (10%).5 (50%). SmallMemPool. The maximum setting is 100 (100%). Example <FLVCacheSize>10</FLVCacheSize> FreeMemRatio Located in the MessageCache. increase the size of the cache. Specifies the maximum percentage of total memory that the total pool size may occupy. LargeMemPool. SmallMemPool. If you specify a value of less than 1minute. The default value is 60 minutes.5</FreeMemRatio> FreeRatio Located in the MessageCache. LargeMemPool.5 CONFIGURATION AND ADMINISTRATION GUIDE 149 XML configuration files reference Contained elements MaxNumberOfRequests. To minimize the amount of memory used in the server process. Example <FreeMemRatio>0. in minutes. and SegmentsPool containers. MaxSize (FLVCache). Contains elements that control the size and features of the recorded media cache. the freed memory returns to the global pool.

and SegmentsPool containers. TrimSize. The elements nested within the GlobalQueue container control the IPC message queue used by all processes to communicate with each other. Specifies in minutes how often to remove idle handles. GCInterval . the server or Administration Server runs as root. Specifies the percentage of the message cache to be consumed by the free list on a global basis. Contained elements HeapSize. Specifies the group ID of the process. Example <GlobalRatio>0.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default is 60 minutes. IdleTime. Example <GCInterval>60</GCInterval> GID Located in the Process containers. See also UID GlobalQueue Container element.5 CONFIGURATION AND ADMINISTRATION GUIDE 150 XML configuration files reference Example <FreeRatio>0. LargeMemPool. SmallMemPool.4</GlobalRatio> HandleCache Container element. MaxQueueSize GlobalRatio Located in the MessageCache. Contains elements that configure how to cache handles used for HTTP requests. When more free memory is available to a thread than the specified ratio.125</FreeRatio> GCInterval Located in the HandleCache container. the freed memory returns to the operating system. The range of this setting is from 0 (0%) to 1 (100%). Contained elements MaxSize (HandleCache). The default setting is 0. This section is used for connections to Flash Remoting. If you do not specify a UID or GID. This element is applicable to Flash Media Server running on Linux systems only.4 (40%).

the value is 100 KB. of the shared memory heap used for an IPC (interprocess communication) message queue. The default value for this element varies according to its container. Allocates 2xN threads. in kilobytes. The following reference table gives the default values for all thread configurations. Only one port number may be specified in this element.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The Administration Service is separate from Flash Media Server.5 CONFIGURATION AND ADMINISTRATION GUIDE 151 XML configuration files reference HeapSize Specifies the maximum size. they are connecting to Flash Media Administration Server. When administrators connect to the server with the Administration Console. Container EdgeCore GlobalQueue Services Default Value 1024 2048 2048 Description If the maximum size of this element is not specified. Example <EdgeCore> <HeapSize>1024</HeapSize> </EdgeCore> See also MaxQueueSize HostPort Specifies the IP address and port number that Flash Media Administration Server binds to. Allocates the exact number of threads specified. Example <HostPort>ip:port</HostPort> See also AdminServer HTTP Container element. which in turn connects to Flash Media Server. . Allocates 1xN threads. The default is to bind to any available IP on port 1111. Default Value 0 >0 >0 -1 -2 Description Allocates the default number of threads. The elements nested within the HTTP container configure the HTTP connector used to connect to Flash Remoting. Associates the default value with the number (N) of processors.

Example <IdleTime>10</IdleTime IpcHostPort The interface and port the server listens on internally for connections from the fmscore process to the Administration Server. If a value for Service is present. HandleCache Httpd Specifies how the built-in webserver is stopped and started. Contained elements Directory. the SERVER. EdgeCore. Linux ignores this section of the command. Specifies the amount of time to wait before releasing cached handles. Service IdleTime Located in the HandleCache container. Flash Media Server starts and stops the web server automatically. The default wait time is 10 minutes. some cached handles are cleared.ini file. queues are used for short or one-time messages that may have more than one target. If no HTTP requests have been made to the host for the length of time specified. Service specifies the name used to install the webserver as an NT service. By default. Contained elements GlobalQueue. or core to edge.Last updated 3/2/2010 FLASH MEDIA SERVER 3. and Service elements to execute the following command lines: $Directory/$Program -d $Directory $Options -k start $Directory/$Program -d $Directory $Options -k stop Note: The value of $Directory can be absolute or relative to $FMSROOT. . -n $Service is appended to both commands. On Windows only. Services LargeMemPool Container element. When enabled is set to true. By default the enabled attribute is set to "${SERVER.HTTPD_ENABLED}". such as master to core. MaxConnectionThreads. Flash Media Server uses the settings in the Directory. Unlike protocols. Program. IPCQueues Container element. Options.5 CONFIGURATION AND ADMINISTRATION GUIDE 152 XML configuration files reference Contained elements MinConnectionThreads. Flash Media Server uses IPC queues to send messages from one core to another or from one process to another. The elements nested within the IPCQueues container configure the IPC queues. Program. MaxConnectionQueueSize. Options. The default value is localhost:11110.HTTPD_ENABLED variable is set to true in the fms.

even if the server is running on an English-language operating system. Set the configuration properties of the individual log files in the Logger. the columns x-sname and x-suri-stem show the name of the stream.ini file: <LicenseInfo>${SERVER. Only serial numbers that are added using the Administration Console can be deleted using the Administration Console. however. The server uses the default loopback address as the local loopback. The elements nested within the Logging container configure general logging properties for the server. Localhost Specifies the IP loopback address. in seconds. The server must reference itself locally. If the value is smaller. The IP loopback address is usually the default localhost address. MaxCacheSize.Last updated 3/2/2010 FLASH MEDIA SERVER 3. By default. Log files are written in English. depending on the filename and the operating system. in the access.5 CONFIGURATION AND ADMINISTRATION GUIDE 153 XML configuration files reference The elements nested within the LargeMemPool container configure the large memory pool. LogInterval Specifies how often to log a checkpoint. Contained elements MaxCacheUnits. GlobalRatio. With more than one network interface. this value is a parameter in the fms. If the name of the recorded stream is in a language other than English.log file. MaxAge. may be in another language. Some content within the log file.LICENSEINFO}</LicenseInfo> LicenseInfoEx Contains license keys added using the Administration Console. . which caches large chunks of memory within the server to increase the performance of large allocations. UpdateInterval. the name is written in the log file in that language.LICENSEINFO}</LicenseInfo> Note: Serial numbers that are added manually (that is.xml file. localhost can map to an erroneous interface. added by editing those files directly) to either fms. See also Checkpoints Logging Container element. Example <LicenseInfo>${SERVER. The default value is 3600 seconds (60 minutes). Field names in the log file are in English. For example. This value should be larger than the value for CheckInterval. MaxUnitSize.xml file cannot be removed using the Administration Console. FreeMemRatio LicenseInfo The license number. FreeRatio. the server logs a checkpoint every check interval.ini or the LicenseInfo tag of Server.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default count is 1. Diagnostic. This element defines the maximum reuse count before the cache unit is freed. The default setting for this element is 017 in octal.000. all Flash Media Server object files are created with permission 0666 & ~017 = 0660 = rw-rw----. the creation mask is set to 017 in octal. CoreExitDelay MaxAge Located in the MessageCache. This element is applicable to Flash Media Server running on Linux systems only. RetrySleep.5 CONFIGURATION AND ADMINISTRATION GUIDE 154 XML configuration files reference Contained elements Time. the file created is assigned permission 0666 & ~022 = 0644 = rw-r--r--. LargeMemPool. Access. AuthEvent. Contained elements CoreGC. SmallMemPool. See also Playback MaxAudioSampleDescriptions Located in the Recording container. such as stream files or shared object files. This element controls who has read/write access to shared object and stream files on the server. Example <MaxAge>1000000</MaxAge> MaxAggMsgSize The maximum size of an aggregate message. Application. If the mask is set to 022. AuthMessage. The default value is 64. Master Container element. FileIO Mask A three-digit octal value used by the Linux umask (user permissions mask) command to set a file creation mask. Note: This setting applies to playback of MP4/F4V files only. Therefore.000. The owner and the users who belong to the same group as the owner get read/write permission to the files. . All Flash Media Server object files. RecordsNumber. in kilobytes. The user must enter the mask in a three-digit octal format. The elements nested within the Master container configure the resource limits for the master server. This key is used by umask to set the file creation mask. are created on the server side with permission 0666. and SegmentsPool containers. By default. RetryNumber.

If there are three listeners and the MaxConnectionRate is set to 10. You can set a fractional maximum connection rate. Example <MaxCacheSize>100</MaxCacheSize> MaxCacheUnits Located in the MessageCache. Example <MaxConnectionQueueSize>-1</MaxConnectionQueueSize> MaxConnectionRate Located in the RTMP (Protocol) and Edge containers. such as 12.5. The server allocates space for sample descriptions when it creates a file. Specifies the maximum number of incoming connections per second that the server’s socket listener accepts. Connections requested at a rate above the value specified in this element remain in the TCP/IP socket queue and are silently discarded by the operating system whenever the queue becomes too long. If the element is set to 10 connections per second. However.xml configuration file using the HostPort element under the HostPortList container element. Specifies the maximum number of connection requests that can be pending. Keep in mind that the number of free units may be less than maximum if the value of the MaxCacheSize limit is reached. . and SegmentsPool containers. Example <MaxCacheUnits>4096</MaxCacheUnits> MaxConnectionQueueSize Located in the HTTP container. The socket listeners are configured in the Adaptor. Connection requests are rejected if this limit is exceeded. This element defines the maximum size of the cache in megabytes. two different audio codecs each have their own sample description. MaxCacheSize Located in the MessageCache. This is a global setting for all socket listeners.5 CONFIGURATION AND ADMINISTRATION GUIDE 155 XML configuration files reference Each change in codec for a content type has a sample description. Note: This setting applies to recording MP4/F4V files only. The default number of pending requests is 1000. The default is 4096 units. For example. adding too many descriptions takes up unnecessary space for every file that the server records. SmallMemPool. The default value is 10. The default is 100 MB. LargeMemPool. SmallMemPool. A value of 0 or -1 disables the feature. To use the default. the server imposes a maximum total combined rate of 30 connections per second. This element defines the maximum number of free units in the cache. the server stops recording.Last updated 3/2/2010 FLASH MEDIA SERVER 3. If the codec type changes more than the number of available descriptions. LargeMemPool. and SegmentsPool containers. each listener has a limit of 10 connections per second. specify -1.

The default value is 256. For example. The maximum number of seconds to wait before flushing the recording buffer. Gaps occur during an append to the file or when video. If more gaps or appends occur than the value specified in the MaxELSTEntries tag. MaxDataSampleDescriptions Located in the Recording container. adding too many descriptions takes up unnecessary space for every file that the server records. the default number is 10. However. The server uses ELST entries when there are gaps in content. setting this value too high takes up unnecessary space in each recorded file. The default value is 5. two different data encoding formats each have their own sample description. MaxFlushTime Located in the RecBuffer container. the server stops recording. Each change in codec for a content type has a sample description. Note: This setting applies to recording MP4/F4V files only. The default value is -2. The default value is 10. recording ends. However. raise the value of HTTP/MaxConnectionThreads to 20. specify 0. Note: This setting applies to recording MP4/F4V files only. For HTTP. If the encoding format type changes more than the number of available descriptions. The maximum number of ELST entries in a recording. The maximum number of threads per scheduler queue. MaxEventQueueThreads Located in the Edge (ResourceLimits) container. MaxELSTEntries Located in the Recording container. Specifies the maximum number of threads used to process connection requests. The default value is 100. To use the default.5 CONFIGURATION AND ADMINISTRATION GUIDE 156 XML configuration files reference Example <MaxConnectionRate>100</MaxConnectionRate> MaxConnectionThreads Located in the HTTP and RTMP (Connector)containers. audio. specify 0. For RTMP. the default number is 5. If the server is taking a long time to process connections. The minimum value is 32. The maximum number of kilobytes to accumulate before flushing the recording buffer. To use the default. The minimum value is 1. MaxFlushSize Located in the RecBuffer container. .Last updated 3/2/2010 FLASH MEDIA SERVER 3. or data content ends while other such content continues. The server allocates space for sample descriptions when it creates a file.

Use the following information to configure all I/O and connection threads processing: • A value of 0 allocates the default number of threads (10). ECCP.5 CONFIGURATION AND ADMINISTRATION GUIDE 157 XML configuration files reference MaxIdleTime Located in the AutoCloseIdleClients container. Use 0 for the default value. The default value for this element varies according to which container protocol it is nested within. and ACCP containers. A low value may cause unneeded disconnections. Admin. Edge. consider the type of applications running on the server. • A value less than 0 ties the number of connection threads to the number (N) of processors. Core. a user might leave the window to idle out. before a client is disconnected. . • A value greater than 0 allocates the exact number of threads specified. Example <MaxInitDelay>5</MaxInitDelay> See also SWFVerification MaxIOThreads Located in the RTMP (Connector). in seconds. Use 0 for the default value. The default value is 3600 seconds (60 minutes). If you set a value of 60 or less. This element is used in the verification of SWF files. Specifies the maximum number of threads that can be created for I/O processing. When you configure this element. Flash Media Server can receive connections through various protocols. and so on. Use -1 for the default value. the server uses 1200 seconds (20 minutes). • -2 means 2 x N threads. if you have an application with which users watch short video clips. For example. as follows: • -1 means 1 x N threads. Use 0 for the default value. Container ACCP Admin Core ECCP Edge RTMP Default Value 10 10 10 10 10 32 Description Use 0 for the default value.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MaxInitDelay The maximum number of seconds that is used to process SWF files. The default value is 5 seconds. Use 0 for the default value. Specifies the maximum idle time allowed.

see EnhancedSeek in the Application. Services containers. MaxSampleSize The maximum allowable size of a sample in an F4V/MP4 file. When messages are sent to a process that is not running. You can increase this value up to 4GB if a file has larger samples. which allows unlimited requests. The default value is 2000 keyframes. the cache uses less memory. The default value is 16777216 (16 MB). Example <MaxKeyframeCacheSize>0</MaxKeyframeCacheSize> MaxNumberOfRequests Specifies the maximum number of pending requests to the File plug-in. in kilobytes. See also Playback MaxSize (FLVCache) Located in the FLVCache container. Once MaxNumberofRequests is reached.Last updated 3/2/2010 FLASH MEDIA SERVER 3. If the plug-in does not respond to a request from the server. the message can be put in a pending queue for the process. the number of pending requests increases up to the value of MaxNumberofRequests. The default value is 0. When the process starts again. By default. The value is specified in kilobytes. the server generates keyframes that are saved in the cache.5 CONFIGURATION AND ADMINISTRATION GUIDE 158 XML configuration files reference Example <RTMP> <MaxIOThreads>32</MaxIOThreads> </RTMP> MaxKeyframeCacheSize Located in the FLVCache container. it picks up the messages. (For more information. Specifies the maximum number of pending IPC messages in the queue. If necessary. Limiting messages saves shared memory if the process never starts. When enhanced seeking is enabled. Specifies the maximum number of keyframes in the cache for each recorded media file. MaxQueueSize Located in the GlobalQueue. Use the MaxQueueSize element to limit the number of messages left in the pending queue. The default size is 100 KB. subsequent requests are rejected.) If you lower MaxKeyframeCacheSize. . Flash Media Server does not count the number of requests made to the File plug-in or responses returned from the File plug-in. Adobe generally recommends keeping the default value of 0. you can use this value to identify problems with the File plug-in. If an application uses many large recorded media files.xml file. EdgeCore. you may want to lower this number.

decrease the value of MaxSize. audio. To decrease the amount of memory the server process uses. This value shares memory with the running process and has a limit of 2 GB in Windows and 3 GB in Linux. MaxSize (HandleCache) Located in the HandleCache container. and data track may be played. Example <MaxTimestampSkew>2</MaxTimestampSkew> MaxTracks Located in the Playback container. The default value is 100 handles.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default value is 500 MB. The higher the value. but hurts performance.5 CONFIGURATION AND ADMINISTRATION GUIDE 159 XML configuration files reference Specifies the maximum size of the recorded media cache in megabytes. The default value is 64. The default value is 200 and the minimum value is 0. A shorter buffer decreases latency between real-time and playback. increase the value of MaxSize. Specifies the maximum size to which the buffer can grow before messages are committed to file. To enable the element. files with up to this many tracks can be parsed. More than this amount is a file error. MaxUnitSize Located in the MessageCache. Example <MaxSize>100</MaxSize> MaxSize (RecBuffer) Located in the RecBuffer container. which means that no handles are cached. The minimum value is 0. There is no maximum value. When you add DVR functionality to an application. the size of the recording buffer affects the play-while-record experience. Specifies the maximum number of handles to cache. This element is disabled by default. Specifies the maximum gap in milliseconds between two adjacent messages when comparing the message timestamps with the real time. Example <MaxSize>5120</MaxSize> MaxTimestampSkew Located in the RecBuffer container. the longer the data will be held in the buffer before written to disk. The maximum number of tracks allowed in a file. The size of the cache limits the number of unique streams the server can publish. To increase the probability that a requested stream will be located in the recorded media cache. and SegmentsPool containers. While only one video. The server logs a warning when the timestamps between two adjacent messages are bigger than the difference in real time plus the value set here for MaxTimestampSkew. it can be the maximum number of handles that the operating system can support. SmallMemPool. LargeMemPool. . set the value to a positive number.

The default value is 10. two different video codecs each have their own sample description. MaxAge. in kilobytes. The elements nested within the MessageCache container control how the message cache holds onto messages used by the system running Flash Media Server and keeps them in memory for reuse instead of returning them and requesting them from the operating system. This setting ensures that chunks larger than MaxUnitSize are released to system memory instead of being held in the pool so that large memory chunks are available. MaxUnitSize. GlobalRatio. If the codec type changes more than the number of available descriptions. FreeMemRatio MinConnectionThreads Located in the HTTP and RTMP (Connector) containers. MaxCacheSize. For example. . However. specify the value 0. Specifies the minimum number of threads in the pool for I/O operations. Note: This setting applies to recording MP4/F4V files only. Example <MessageCache> <MaxUnitSize>16</MaxUnitSize> </MessageCache> MaxVideoSampleDescriptions Located in the Recording container. The default is 1 multiplied by the number of processors. Messages are the essential communication units of Flash Media Server. For example. Each change in codec for a content type has a sample description. if this tag is under the MessageCache tag. Flash Media Server has several memory pools (distinct from the recorded media cache) that hold memory in chunks. the server doesn’t cache any messages greater than MaxUnitSize. Contained elements MaxCacheUnits.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default size is 16 KB. the server stops recording. UpdateInterval. Example <MinConnectionThreads>0</MinConnectionThreads> MinEventQueueThreads Located in the Edge (ResourceLimits) container. FreeRatio.5 CONFIGURATION AND ADMINISTRATION GUIDE 160 XML configuration files reference Specifies the maximum size. of a memory chunk allowed in a memory pool. To use the default. adding too many descriptions takes up unnecessary space for every file that the records. MessageCache Container element. Recycling them improves the server’s performance. The server allocates space for sample descriptions when it creates a file.

Use -1 for the default value. The Mp4 elements configure how the server plays and records MP4. and other MP4 file types. The default interval for checking and removing content is 60 seconds. Admin. The default value for this element varies according to which container protocol it is nested within. MsgPoolGC Specifies how often the server checks for content in and removes content from the global message pool. Contained elements Playback. MOV. Container ACCP Admin Core ECCP Edge RTMP Default Value 2X number of processors 2X number of processors 2X number of processors 2X number of processors 2X number of processors 2X number of processors Description Use 0 for the default value. Example <ECCP> <MinIOThreads>0</MinIOThreads> </ECCP> Mp4 Container element. Use 0 for the default value. Flash Media Server can receive connections through various protocols. Example <MinGoodVersion>0</MinGoodVersion> MinIOThreads Located in the RTMP (Connector). Recording. Core. Specifies the minimum accepted version of SWF verification feature that the server allows. F4V. Edge. Use 0 for the default value. . The element specifies the minimum number of threads that can be created for I/O operations. MinGoodVersion Located in the SWFVerification container. and ACCP containers.5 CONFIGURATION AND ADMINISTRATION GUIDE 161 XML configuration files reference The minimum number of threads per scheduler queue. ECCP. The default value is 2. Use 0 for the default value. Use 0 for the default value. The default value of 0 accepts current and all future versions.Last updated 3/2/2010 FLASH MEDIA SERVER 3.

Order Located in the AdminServer container. Flash Media Server automatically detects the operating system configuration. . and other) has its own cache. The default value is 1024 bytes. The server caches F4V/MP4 video. and other data in memory.Allow</Order> To process the request if in <Allow> and not in <Deny>. audio. depending on the type of content you are delivering. Specifies the order in which to evaluate the Allow and Deny elements. Specifies the number of completion routine threads in Windows 32-bit systems for edge server I/O processing. This is an empty tag. Deny</Order> OtherAutoBufferReadSize Located in the Playback container. Specifies additional switches for the command-line argument that starts and stops the web server. Options Located in the Httpd container. to achieve better disk performance. Example To process the request if not in <Deny> or in <Allow>. this element can force Flash Media Server to use IPv4 even if IPv6 is available. The default value is 1. set: <Order>Allow.5 CONFIGURATION AND ADMINISTRATION GUIDE 162 XML configuration files reference NetworkingIPv6 Enables or disables Internet Protocol version 6 (IPv6). video. The operating system network stack should be configured to support IPv6. Example <NumCRThreads>0</NumCRThreads> NumSchedQueues Located in the Edge (ResourceLimits) container. Caching data allows the server to make fewer disk reads and to perform better. set: <Order>Deny. The number of scheduler queues. You can tune the size of each cache. Example <NetworkingIPv6 enable="false" /> NumCRThreads Located in the RTMP (Connector) container. The minimum size is 1024 bytes.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Each data type (audio. if desired.

on Linux. There are 2 Process elements. . in megabytes. Contained elements UID. AllowAnyAACProfile.5 CONFIGURATION AND ADMINISTRATION GUIDE 163 XML configuration files reference Playback Container element. all the server processes switch from root to the UID and GID. the server runs as root.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MaxSampleSize. and other MP4 file types. The default value is bin/httpd. in seconds. For security reasons. The elements are applicable to servers running on Linux systems only. The Playback elements configure how the server plays back MP4. The location of the executable file for the web server. The default value is 1600. MOV. If you do not specify a value for UID and GID. GID ProcVMSizeMonitorInterval The monitoring interval for process virtual memory use. OtherAutoBufferReadSize. Contained elements VideoAutoBufferReadSize. AudioAutoBufferReadSize. in megabytes. AllowAnyAVCProfile Plugins Container element. The elements nested within the Plugins element configure plug-ins. F4V. The elements nested within the Process element contain the UID and GID elements for all server processes. The default value is 1800. Program Located in the Httpd container. one for Flash Media Server and one for Flash Media Administration Server. MaxAggMsgSize. ProcVMSizeWarn The log warning threshold for high process virtual memory use. after the ProcVMSizeWarn threshold has been triggered. The default value is 60. MaxTracks. Contained elements FilePlugin. ProcVMSizeNominal The log notification threshold for reverting to a nominal process virtual memory use. Protocol Container element. EnableAggMsgs. UserDefined Process Container element.

The default value of -1 allows an unlimited number of records. If an attempt to open the log fails and the number of records in the queue is greater than or equal to this number. The Recording elements configure how the server records F4V/MP4 file types. ReadBufferSize The size of the largest I/O read buffers that the server uses. A shorter buffer decreases latency between real-time and playback. Contained elements MaxELSTEntries. follow these guidelines: • A value of 0 allocates the default number of threads (10). MaxFlushTime. MaxVideoSampleDescriptions RecordsNumber The number of records in the log queue. MaxAudioSampleDescriptions. Larger buffers provide better performance for some use cases. but hurts performance. • A value less than 0 ties the number of connection threads to the number (N) of processors: • -1 means 1 x N threads • -2 means 2 x N threads. To set the values of all I/O and connection threads processing. ECCP. Contained elements MaxSize (RecBuffer). MaxTimestampSkew. MaxDataSampleDescriptions. the core process is shut down. RecBuffer Container element. Contains elements that configure the buffer for recording. When you add DVR functionality to an application.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 164 XML configuration files reference Flash Media Server receives connections through various protocols. MaxFlushSize. The default value is 4096. • A value greater than 0 allocates the exact number of threads specified. the size of the recording buffer affects the play-while-record experience. etc. in kilobytes. . RTMP (Protocol) PublicIP Specifies that if the system has more than two network ports. The elements in this container configure those protocols and how the connection requests are received. However. use this element to create a public IP address. larger buffers use more memory. AllowedVideoLag Recording Container element. Contained elements ACCP.

CPUMonitor. Relevant when opening a log file fails. SmallMemPool. ProcVMSizeWarn.xml file. including the HTTP and RTMP protocols.5 CONFIGURATION AND ADMINISTRATION GUIDE 165 XML configuration files reference ResourceLimits Container element.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default value is 0. The following reference table lists the default values for all thread configurations. Root Container element. SocketGC. >0 . ProcVMSizeMonitorInterval. ApplicationGC. LargeMemPool. MsgPoolGC. SSLSessionCacheGC. ThreadPoolGC. The elements nested within the ResourceLimits container specify the maximum resource limits for the server. This container holds elements that configure which versions of RTMP can be used to connect to the Administration Server. IPCQueues. Master RetryNumber Number of times to retry opening a log file. RTMP is the protocol used for communication between Flash Player and Flash Media Server. SegmentsPool. The Root element is a container for all the other elements in the Server. The default value is 100 ms. RecBuffer. Contained elements FLVCachePurge. FLVCache. Contained elements RTMPE RTMP (Connector) Container element. MessageCache.ProcVMSizeNominal. RetrySleep Number of milliseconds the server waits before retrying to open a log file. Default Value 0 Description Allocates the default number of threads (10). FLVCacheSize. This container holds the elements that configure RTMP (Real-Time Messaging Protocol) for communication between Flash Remoting and Flash Media Server. Protocol. Connector. RTMP (AdminServer) Container element. Allocates the exact number of threads specified. Relevant when opening a log file fails.

SocketSndBuf. NumCRThreads. . The elements in this section configure how the segments pool caches segments of video files within Flash Media Server to increase performance of video streaming and keep frequently used video files in memory.Last updated 3/2/2010 FLASH MEDIA SERVER 3. UpdateInterval. Specifies whether Encrypted Real-Time Messaging Protocol (RTMPE) can be used to connect to the Administration Server. Admin. FreeRatio. Contained elements MaxCacheUnits. Scope Located in the Logging container. FreeMemRatio Server Container element. This element determines whether to write a separate log file for each virtual host or to write one log file for the server. Contained elements Edge. MinConnectionThreads. RTMP is the protocol used for communication between Flash Player and Flash Media Server. Core. (RTMPE also covers RTMPTE. MaxConnectionQueueSize RTMP (Protocol) Container element. SegmentsPool Container element.5 CONFIGURATION AND ADMINISTRATION GUIDE 166 XML configuration files reference Default Value <0 -1 -2 Description Associates the default value with the number (N) of processors. MaxConnectionThreads. This container holds the elements that configure RTMP (Real-Time Messaging Protocol).) The default value is true. MaxIOThreads. Allocates 2xN threads. which enables logging for all processes on the server. SocketRcvBuff RTMPE Located in the RTMP container. MaxAge. Setting this element to false prohibits RTMPE and RTMPTE from being used. MaxCacheSize. The default is server. MaxUnitSize. The value for this element is server or vhost. Allocates 1xN threads. GlobalRatio. Contained elements MinIOThreads.

which saves small chunks of memory in the server to increase performance of small allocations. SSL.global.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Streams. CrossDomainPath. Mask. MaxCacheSize. AutoCloseIdleClients. The default value is 60 seconds. specifies the name used to install the webserver as an NT service.com</ServerDomain> Service Located in the Httpd container. If this element is not set. Localhost. Contained elements MaxCacheUnits. MaxQueueSize SmallMemPool Container element.mycompany. Plugins. On Windows only. If this element is empty the hostname field is empty in referrer header. Process. SWFVerification. The elements in this section configure the small memory pool. PublicIP. some application servers require this information as a part of incoming connection requests. Logging. LicenseInfoEx. in seconds. LicenseInfo. the server checks for and removes inactive sockets. For security purposes. Services Container element. the host name field is not supplied in the referrer header. The server uses this value to set the hostname in the referrer header tag when making a net connection to a remote server. Example <SocketGC>60</SocketGC> . ReadBufferSize. The elements in this section control the IPC message queue used by the edge and core processes to communicate with each other. Specifies how often.5 CONFIGURATION AND ADMINISTRATION GUIDE 167 XML configuration files reference The elements nested within the Server element contains the elements that configure the server. FreeMemRatio SocketGC Located in the AdminServer and ResourceLimits containers. Example <ServerDomain>mydomain. Httpd ServerDomain Specifies the host name (with the domain) of the server computer. GlobalRatio. FreeRatio. AdminServer. UpdateInterval. ResourceLimits. MaxUnitSize. Contained elements HeapSize. Contained elements NetworkingIPv6. MaxAge.

The default size is 200. Admin. The SSL elements in Server. Contained elements SSLRandomSeed. You should explicitly set this value only if you have a very high bandwidth connection that requires a large socket buffer. Admin. in bytes. Specifies the size of the direct-access socket table for quick look-up. ACCP containers. SocketSndBuf The size of the client socket send buffer. SSLClientCtx . It is recommended that you do not explicitly set this value. ECCP. Setting a high value significantly increases the amount of memory used by each client. The default value is 0. which tells the server to use the operating system default values. Example <Admin> <SocketTableSize>-1</SocketTableSize> </Admin> SSL Container element. SocketTableSize Located in the Edge. Specifies the number of overflow buckets if all slots in the socket table are in use.xml configure the server to act as an SSL-enabled client by securing the outgoing connections. Setting a high value significantly increases the amount of memory used by each client. ECCP. The default value is 0.5 CONFIGURATION AND ADMINISTRATION GUIDE 168 XML configuration files reference SocketOverflowBuckets Located in the Edge. ACCP containers. specify -1 to use the default number of buckets. in bytes. It is recommended that you do not explicitly set this value. Core. The default number of buckets is 16. SSLSessionCacheGC. Use -1 for the default value. You should explicitly set this value only if you have a very high bandwidth connection that requires a large socket buffer. which tells the server to use the operating system default values.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <Admin> <SocketOverflowBuckets>-1</SocketOverflowBuckets> </Admin> SocketRcvBuff The size of the client socket receive buffer. Core.

Important: Contact Adobe Support before changing the default settings. such as a key-exchange algorithm. such as RC4-SHA. and sort ciphers by strength from highest to lowest level of encryption. For example. For example. The ciphers deleted can never reappear in the list even if they are explicitly stated. This option doesn't add any new ciphers—it just moves matching existing ones. or one of a selected number of aliases for common groupings. there are special keywords and prefixes. then the ciphers are permanently deleted from the list. block low-strength ciphers. This element is a colon-delimited list of encryption resources.5 CONFIGURATION AND ADMINISTRATION GUIDE 169 XML configuration files reference SSLCACertificateFile Located in the SSLClientCtx container. . Each file in the directory must contain only a single CA certificate. digest type. Specifies the suite of encryption ciphers that the server uses to secure communications. but some or all of the ciphers can be added again later. or cipher suites of a certain type. The string of ciphers can take several different forms. and the prefix ! removes the cipher from the list. encryption method. For Win32 only: If this element is empty. SHA1 represents all cipher suites using the digest algorithm SHA1. but block those using anonymous Diffie-Hellman authentication. SSLCipherSuite Located in the SSLClientCtx container. Commas or spaces are also acceptable separators. block export ciphers. and SSLv3 represents all SSL v3 algorithms. Specifies the name of a file that contains one or more CA (Certificate Authority) digital certificates in PEM (Privacy Enhanced Mail) encryption format. • Each cipher string can be optionally preceded by the characters !. • If + is used. Each item in the cipher list specifies the inclusion or exclusion of an algorithm or cipher. • Lists of cipher suites can be combined in a single cipher string using the + character as a logical and operation. • If . The Windows certificate store can be imported into this directory by running FMSMaster . The cipher list consists of one or more cipher strings separated by colons.is used. block MD5 hashing. or +.Last updated 3/2/2010 FLASH MEDIA SERVER 3. but colons are normally used. File names must be the hash with “0” as the file extension. attempts are made to find CA certificates in the certs directory located at the same level as the conf directory. In addition.initialize from the command line. SHA1+DES represents all cipher suites containing the SHA1 and DES algorithms. then the ciphers are deleted from the list. • It can represent a list of cipher suites containing a certain algorithm. authentication method. the keyword ALL specifies all ciphers. For example. The default cipher list instructs the server to accept all ciphers. • If ! is used. • It can consist of a single cipher suite.console . -. then the ciphers are moved to the end of the list. Specifies the name of a directory containing CA certificates. SSLCACertificatePath Located in the SSLClientCtx container.

<SSLCipherSuite>ALL:+HIGH:+MEDIUM:+LOW:+EXP:+NULL</SSLCipherSuite> This string instructs the server to accept only high.and medium-strength encryption. Key exchange algorithm kRSA kDHr kDHd RSA DH EDH ADH Description Key exchange Diffie-Hellman key exchange with RSA key Diffie-Hellman key exchange with DSA key Ephemeral Diffie-Hellman key exchange RSA key exchange Ephemeral Diffie-Hellman key exchange Anonymous Diffie-Hellman key exchange Authentication methods aNULL aRSA aDSS aDH Description No authentication RSA authentication DSS authentication Diffie-Hellman authentication . and reject export-strength versions.5 CONFIGURATION AND ADMINISTRATION GUIDE 170 XML configuration files reference • If none of these characters is present. with the high being preferred. the server does not evaluate them. • The cipher string @STRENGTH sorts the current cipher list in order of the length of the encryption algorithm key. Example This cipher string instructs the server to accept all ciphers except those using anonymous or ephemeral Diffie-Hellman key exchange. <SSLCipherSuite>ALL:+SSLv2</SSLCipherSuite> The following is the complete list of components that the server can evaluate. <SSLCipherSuite>RSA:!NULL!EXP</SSLCipherSuite> <SSLCipherSuite>RSA:LOW:MEDIUM:HIGH</SSLCipherSuite> This cipher list instructs the server to accept all ciphers but place them in order of decreasing strength. • If the list includes any ciphers already present. in the order of preference.Last updated 3/2/2010 FLASH MEDIA SERVER 3. This sequencing allows clients to negotiate for the strongest cipher that both they and the server can accept. <SSLCipherSuite>ALL:!ADH:!EDH</SSLCipherSuite> These cipher strings instruct the server to accept only RSA key exchange and refuse export or null encryption. The server evaluates both strings as equivalent. including only those ciphers the server is prepared to accept. then the string is just interpreted as a list of ciphers to be appended to the current preference list. <SSLCipherSuite>ALL:+HIGH:!LOW:!EXP:!NULL</SSLCipherSuite> This string instructs the server to accept all ciphers but to order them so that SSLv2 ciphers come after SSLv3 ciphers. The components can be combined with the appropriate prefixes to create a list of ciphers.

Contained elements SSLVerifyCertificate. SSLCACertificatePath. Configures the server to act as an SSL-enabled client by securing the outgoing connections. SSLCACertificateFile. Example <SSLRandomSeed>ALL:!ADH:!EDH</SSLRandomSeed> .Last updated 3/2/2010 FLASH MEDIA SERVER 3. SSLCipherSuite SSLRandomSeed Located in the SSL container. Specifies how often to flush expired sessions from the server-side session cache. SSLVerifyDepth.0 ciphers All ciphers using DSS authentication SSLClientCtx Container element.5 CONFIGURATION AND ADMINISTRATION GUIDE 171 XML configuration files reference Encryption methods eNULL DES 3DES RC4 RC2 IDEA NULL EXP LOW MEDIUM HIGH Description No encoding DES encoding Triple-DES encoding RC4 encoding RC2 encoding IDEA encoding No encryption All export ciphers (40-bit encryption) Low-strength ciphers (no export. DES) 128-bit encryption Triple-DES encoding Digest types MD5 SHA1 SHA Description MD5 hash function SHA1 hash function SHA hash function Additional aliases All SSLv2 SSLv3 DSS Description All ciphers All SSL version 2.0 ciphers All SSL version 3.

Example <SSLVerifyDepth>9</SSLVerifyDepth> Streams Container element. Specifies the maximum depth of the certificate chain to accept. Specifies whether the certificate returned by the server should be verified. certificate verification fails. Note: Disabling certificate verification can result in security problems. Example <SSLSessionCacheGC>5</SSLSessionCacheGC> SSLVerifyCertificate Located in the SSLClientCtx container. Specifies how often to check for and remove expired sessions from the server-side session cache.D:\SWFs</SWFFolder> . Contained elements Mp4 SWFFolder Located in the SWFVerification container. Example <SSLVerifyCertificate>true</SSLVerifyCertificate> SSLVerifyDepth Located in the SSLClientCtx container. specify false. Use a semicolon to separate multiple directories. If a self-signed root certificate cannot be found within this depth. Specifies a folder containing SWF files that are verified to connect to any application on this server.5 CONFIGURATION AND ADMINISTRATION GUIDE 172 XML configuration files reference SSLSessionCacheGC Located in the SSL container. To disable certificate verification. F4V. and other MP4 file types.Last updated 3/2/2010 FLASH MEDIA SERVER 3. MOV. Example The following example allows SWF files from either the C or the D directory to be authenticated: <SWFFolder>C:\SWFs. The default value is 9. The Streams elements configure how the server plays and records MP4. Certificate verification is enabled by default.

Example <Time>local</Time> TrimSize Located in the HandleCache container.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <TerminatingCharacters>CRLF</TerminatingCharacters> ThreadPoolGC Located in the ResourceLimits container.2</TrimSize> TTL Located in the Cache container. The default value is 0. The default is CRLF (carriage return and line feed). Specifies the time field in a log file. Can be specified as a number between 0 and 1.5 CONFIGURATION AND ADMINISTRATION GUIDE 173 XML configuration files reference SWFVerification Container element. The default setting is local. DirLevelSWFScan. Contained elements SWFFolder.Cache TerminatingCharacters Located in the Logging container. MinGoodVersion. Specifies the final characters of each log entry in log files. MaxInitDelay.2 (20%). You cannot specify less than 20 minutes. Specifies a percentage of cached handles to remove. The default time is 20 minutes. representing 0% to 100%. . Example <ThreadPoolGC>25</ThreadPoolGC> Time Located in the Logging container. Example <TrimSize>0. Contains elements that configure how SWF files connecting to an application are verified. Specifies in minutes how often Flash Media Server checks for and removes unused I/O threads. The time field in a log file can be specified either as UMT (GMT) or local time.

the server or Administration Server runs as root. Specifies the maximum time in minutes to wait for the server to scan the SWF folders for updates when there is a miss in the cache. This element is applicable to Flash Media Server running on Linux systems only. The default value is 1440 minutes (24 hours). audio. Each data type (audio. if you are delivering audio-only content. You can tune the size of each cache. Define elements within the UserDefined element to store data that File plug-ins and Authorization plug-ins can retrieve. If you do not specify a UID or GID. For example. depending on the type of content you are delivering. The default value is 5 minutes. UserDefined Container element. to achieve better disk performance.5 CONFIGURATION AND ADMINISTRATION GUIDE 174 XML configuration files reference Specifies in minutes how long each SWF file remains in the SWF verification data cache. See also GID UpdateInterval Specifies how often thread statistics are collected. see the getConfig() method in the Flash Media Interactive Server plug-in API Reference available at www. For more information. VideoAutoBufferReadSize Located in the Playback container. and other data in memory. and decrease the VideoAutoBufferReadSize buffer.adobe. Caching data allows the server to make fewer disk reads and to perform better.Last updated 3/2/2010 FLASH MEDIA SERVER 3. increase the AudioAutoBufferReadSize buffer. and other) has its own cache.com/go/learn_fms_pluginapi_en. UID Located in the Process containers. . The server caches F4V/MP4 video. The minimum size is 1024 bytes. This element contains the server process user ID. The default value is every 1024 messages. Example <UpdateInterval>1024</UpdateInterval> UpdateInterval (Cache) Located in the Cache container. video. The default value is 153600 bytes.

133.1. You authorize the administrator’s access by creating a comma-delimited list of the accessible host names or domain names and/or full or partial IP addresses.adobe. AdminServer Container element.60</Allow> See also Enable.60. When administrators use the Administration Console to connect to Flash Media Server.60.com. Deny (User). The Administration Service is separate from Flash Media Server. Whenever possible. use the IP addresses in the Allow element to improve the server’s performance when processing connection requests.60</Allow> See also Password.xml file installed with Flash Media Server in the RootInstall/conf/ directory.com. Edit this file to set permissions for Administration API calls to Flash Media Administration Server. they are connecting to Flash Media Administration Server.yourcompany. Example <Allow>foo.com.xml file The Users.5 CONFIGURATION AND ADMINISTRATION GUIDE 175 XML configuration files reference Users. Order (User) .133.xm file is located at the root level of the RootInstall/conf directory.10. Adobe does not recommend this usage as it creates a security risk. However. 10. 10. Edit this file to identify Flash Media Server administrators and set their access permissions. The administrator can only connect to the server from those hosts specified in this Allow element. adobe. To see the element structure and default values.yourcompany.10. The value All authorizes the administrator to use all HTTP commands. see the Users. Example <Allow>foo.com. You can authorize an administrator to use multiple HTTP commands for access by creating a comma-separated list of the commands. Order (HTTPCommands) Allow (User) Lists the specific hosts from which an administrator can connect to Flash Media Administration Server.1. The HttpCommands container nested within the AdminServer container configures the access level to Flash Media Administration Server. Deny (HTTPCommands). which in turn connects to the server.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Contained elements HTTPCommands Allow (HTTPCommands) Lists the Flash Media Administration Server commands that the administrator can access using HTTP.

com.Last updated 3/2/2010 FLASH MEDIA SERVER 3. This Deny element lists the Flash Media Administration Server commands that an administrator cannot use through HTTP. You can deny an administrator the use of multiple HTTP commands to access the Administration Service by creating a comma-separated list of those HTTP commands. Order (HTTPCommands) Deny (User) Flash Media Server uses two elements named Deny: the Deny element in the User container and the Deny element in the HTTPCommands container. You restrict the administrator’s access by creating a comma-delimited list of those host names or domain names and/or (full or partial) IP addresses.5 CONFIGURATION AND ADMINISTRATION GUIDE 176 XML configuration files reference Deny (HTTPCommands) Flash Media Server uses two elements named Deny: the Deny element in the User container and the Deny element in the HTTPCommands container. Order (HTTPCommands) HTTPCommands Container element.60</Deny> See also Password.60. <Deny>foo. Deny (HTTPCommands). To disable administrative access through the use of HTTP requests. Example This example lists the computers sending connection requests that Flash Media Administration Server will not accept.yourcompany. .10.1. Example <Deny>Deny. This element lists those hosts from which the administrator is not authorized to connect to Flash Media Administration Server. Allow (HTTPCommands).133. Example <Enable>true</Enable> See also Allow (HTTPCommands). Order (User) Enable This element enables or disables the use of HTTP requests to execute administrative commands.10.adobe. Setting this element enables HTTP requests to execute administrative commands.Allow</Deny> See also Enable. Allow (User).com. do not set this element.

Allow</Order> See also Password. Specifies the order in which to evaluate the Deny and Allow commands. Allow means that administrative access is allowed unless the user is specified in the Deny list of commands and not specified in the Allow list. and it is interpreted as an encoded string. When the encrypt attribute is set to true. Allow (HTTPCommands). When finished.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Allow (HTTPCommands). Example The sequence Deny. Order (HTTPCommands) Order (HTTPCommands) Flash Media Server uses two Order elements: one in the HTTPCommands container and another in the User container. Allow means the HTTP command is allowed if the command is in the Allow list of commands or not in the Deny list. and the other in the User container. Deny (User) Password Specifies the password for vhost administrators.5 CONFIGURATION AND ADMINISTRATION GUIDE 177 XML configuration files reference This section contains the settings for those Flash Media Administration Server commands that can be accessed through HTTP. Specify each Administration API that may be called over HTTP in a commadelimited list. Allow (User). the password you see in the file is the encrypted password. restart the server. Example The default sequence Allow. Contained elements Enable.Allow</Order> The sequence Allow. Deny (HTTPCommands). .Deny</Order> The alternative sequence Deny.Deny</Order> See also Enable. The default value is ping. Passwords are usually encrypted. <Order>Allow. Deny (HTTPCommands) Order (User) Flash Media Server uses two Order elements: one in the HTTPCommands container. Deny means that administrative access is allowed unless the user is specified in the Allow list of commands and not in the Deny list: <Order>Allow. the encrypt attribute instructs the server to encrypt the contents of the password. Deny means the HTTP command is allowed if it is in the Allow list of commands and not in the Deny list. In the following example. <Order>Deny. Specifies the sequence in which Flash Media Server evaluates the Allow and Deny elements for an administrator. Passwords cannot be empty strings (""). <Order>Deny.

Example <Root name="_defaultVHost_"> User This element identifies an administrator of the server. Example Use the name attribute to identify the login name of a Flash Media Server administrator: <User name="jsmith"></User> See also UserList UserList Container element. Contained elements User. Password. The Vhost. and other parameters. You can identify multiple administrators of a virtual host by creating a profile for each administrator. Order (User) Root Container element.xml file The Vhost. The UserList element defines and holds information about server administrators.xml file. These settings include aliases for the virtual host.5 CONFIGURATION AND ADMINISTRATION GUIDE 178 XML configuration files reference Example <Password encryt="true"></password> See also Allow (User). limits on the resources the virtual host can use. Allow (User).xml configuration file defines an individual virtual host. Deny (User).xml file contains elements that define the settings for the virtual host. the location of the virtual host’s application directory.Last updated 3/2/2010 FLASH MEDIA SERVER 3. then this tag must have its name attribute set to the name of the virtual host under which it resides. . Each virtual host directory on the server contains its own Vhost. Deny (User). If the Users. The Root element is a container for all the other elements. Order (User) Vhost.xml file resides under a virtual host (to define administrators for that virtual host).

Each adaptor must contain a _defaultVHost_ directory in addition to the custom virtual hosts that you define.adobe. but you wish to connect by simply specifying “abc”. Contained elements AggregateMessages Determines whether aggregate messages are delivered from the edge cache when the virtual host is configured as an edge server. RouteEntry Alias The Alias element specifies the assumed name(s) of the virtual host. You can avoid unexpected behavior by specifying a unique alias for each virtual host. The elements nested within the Access container configure the Access log settings. Keep in mind that abc must still map to the same IP address as “abc. or if you want to be able to connect to this virtual host with different names. The name of the directory must be the actual name of the virtual host. see the Vhost.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Example <AggregateMessages enabled="true" <MaxAggMsgSize>65536</MaxAggMsgSize>> </AggregateMessages> See also EdgeAutoDiscovery. that specifies an IP address on the server computer. If a client application tries to connect to a virtual host that does not exist. such as a WINS address or a hosts file.com.xml file installed with Flash Media Server in the RootInstall/conf/_defaultRoot_/_defaultVhost_ directory. then specify the alias abc. An alias is an alternative short name to use when connecting to the virtual host. the messages will be broken up before being cached.xml. The default value is false. To see the element structure and default values in Vhost. Use the Alias element to shorten long host names. then the first match that is found is taken. If the edge server receives aggregate messages from the origin when this setting is disabled.adobe.com”. The Alias element lets you specify additional names to connect to this virtual host. Access Container element. If you are using a secure port for the adaptor that contains the virtual host. If more than one virtual host on the same adaptor has been defined with the same alias. you can only define one virtual host for the adaptor. such as streaming. in addition to _defaultVHost_.adobe.com</Alias> If the name of this virtual host is “abc.5 CONFIGURATION AND ADMINISTRATION GUIDE 179 XML configuration files reference Each virtual host must have its own directory inside the adaptor directory. the server attempts to connect it to _defaultVHost_. Each defined virtual host must be mapped to a DNS (domain name server) entry or another name resolution.com”. Example <Alias name="abc">abc. .adobe. The Access logs are located in the RootInstall\logs directory.

The default value is all.com and yourcompany. it may create a security risk. If the Allow element is left empty. <Allow>all</Allow> This example allows connections from all domains. You can specify an unlimited number of aliases by adding additional Alias elements. See also Anonymous AllowOverride Specifies whether overriding edge autodiscovery is allowed by specifying the rtmpd protocol.5 CONFIGURATION AND ADMINISTRATION GUIDE 180 XML configuration files reference See also AliasList AliasList Container element.com.yourcompany.com domains. Here are some key differences between anonymous and explicit proxies: • The identity (IP address and port number) of an anonymous server is hidden from the client. Contained elements AggregateMessages Allow This element is a comma-delimited list of domains that are allowed to connect to this virtual host. The elements nested in this section list the alias(es) for this virtual host. Each Alias must map to the IP address of the virtual host. edge autodiscovery is performed by default. Setting this element to true creates an implicit proxy to intercept the incoming URIs. . Example <AllowOverride>true</AllowOverride> See also Enabled. The default value is false. <Allow>localhost</Allow> This example allows localhost connections only.Last updated 3/2/2010 FLASH MEDIA SERVER 3. WaitTime Anonymous Configures the virtual host as an anonymous proxy (also called an implicit or transparent proxy) or as an explicit proxy. If enabled. Examples <Allow>adobe. the only connections allowed are those coming from the same domain.com</Allow> This example allows only connections from the adobe. Both anonymous and explicit proxies intercept and aggregate the clients’ requests to connect to the origin server. Adobe does not recommend the use of all.

Example <AppInstanceGC>1</AppInstanceGC> See also MaxConnections. the routing information in the URI to the next edge server in the chain. MaxStreams. • In Windows. • The explicit proxy modifies the routing information in the URI by stripping off its token or identifier in the URI before passing the URI on to the next server in the chain. The Applications directory is the base directory where all applications for this virtual host are defined. MaxSharedObjects AppsDir Specifies the Applications directory for this virtual host. The default interval is 1 minute. RouteTable. such as Shared Objects.5 CONFIGURATION AND ADMINISTRATION GUIDE 181 XML configuration files reference • The anonymous proxy does not change or modify the routing information in the incoming URI before connecting the client(s) to the origin server. Note: If you use this tag to map to a network drive. without modification. Example <Anonymous>falsetrue</Anonymous> See also Mode. see “Mapping directories to network drives” on page 34 for additional information. and Script engines. You define an application by creating a subdirectory with the application name.Last updated 3/2/2010 FLASH MEDIA SERVER 3. EdgeAutoDiscovery. • Any anonymous proxy in the chain passes on. MaxAppInstances. AggregateMessages AppInstanceGC Specifies how often to check for and remove unused resources for application instances. MaxEdgeConnections. the default AppsDir location is C:\Program Files\Adobe\Flash Media Server 3. • The URI for an explicit proxy specifies the edge server(s) that will intercept connection requests to the origin server. CacheDir. • In Linux. LocalAddress. You can create a chain of proxies by specifying them in the URI. • The routing information in the URI for a chain of explicit proxies specifies the edge servers that are chained together to intercept connection requests to the origin server. • The routing information in the URI for a chain of explicit proxies specifically identifies the sequence of edge servers in the chain. Streams. .5\applications. • The URI for a chain of explicit proxies directs all clients’ connection requests through a specific sequence of edge servers before making the connection to the origin server. the default location is /opt/adobe/fms/applications.

The server closes the client connection to the server and writes a message to the access log. . unless values are defined in the Application. each of which contains application subdirectories. you can disable the feature for individual virtual hosts in the Vhost.xml file. The default value is false.xml file. the server sends a status message to the NetConnectionobject (the client). Once you enable the feature in the Server. A client is active when it is sending or receiving data. the feature is disabled.xml values override the Vhost.xml configuration file apply to all clients connected to the server. you must enable the feature in the Server.xml configuration file apply to all clients connected to the Vhost. MaxIdleTime CacheDir Container element. The Application. Subsequently.xml file. unless the values are defined in the Vhost.swf) will be able to connect to the virtual host.5 CONFIGURATION AND ADMINISTRATION GUIDE 182 XML configuration files reference Example 1 <AppsDir>C:\MyApps.xml values. Use AutoCloseIdleClients to specify how often the server should check for idle clients. Example <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> See also AppsDir. You can specify two locations. If no location is specified for this element. the applications directory is assumed to be located in the vhost directory. ResourceLimits. This ensures that the Administration Console (fms_adminConsole.xml file. be sure to include a directory named admin in each directory. Example 2 The following example shows a mapping to a network drive: <AppsDir>\\myNetworkDrive\share\fmsapps</AppsDir> See also AliasList. Set the enable attribute to true to close idle clients. VirtualKeys AutoCloseIdleClients Container element.D:\NewApps</AppsDir> You can specify multiple applications directories by separating locations with a semicolon (.xml values override the Server. The Vhost.). the values defined in the Server.xml files or for individual applications in Application. When a client has been idle longer than the maximum idle time (60 seconds by default). The server also writes a message such as “Client x has been idle for y seconds” in the core and event logs.xml values. The values defined in the Vhost. If the enable attribute is omitted or set to false. To configure the closing of idle connections.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Determines whether or not to close idle clients automatically.xml. If you change the default location of the AppsDir element.

5 CONFIGURATION AND ADMINISTRATION GUIDE 183 XML configuration files reference This element enables or disables writing recorded streams to disk. LogInterval DNSSuffix Specifies the primary DNS suffix for this virtual host. Contained elements Mode. MaxSize See also RequestTimeout Checkpoints Enables logging checkpoint events. See also AliasList. The default value is false. The useAppDir attribute determines whether to separate cache subdirectories by application. Contains elements that configure edge autodiscovery. VirtualKeys.xml file. Checkpoint events log bytes periodically from the start to the end of an event. in addition to being cached in memory.xml and Application. the edge server tries to determine which server in the cluster it should connect to (may or may not be the server specified in the URL). VirtualDirectory EdgeAutoDiscovery Container element. each virtual host should point to its own cache directory. play-continue.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The default value is true. If a server has multiple virtual hosts. Path. The contents of the cache change. then this element is used as the domain suffix. You can disable checkpoints at the vhost and application level in the Vhost. ResourceLimits. This element contains the enable attribute which you can set to true or false. Caching static content can reduce the overall load placed on the origin server. The following are available as checkpoint events: connect-continue. An edge server may connect to another server that is part of a cluster. You can also override the logging interval at the vhost and application levels. and publish-continue. RouteTable. Anonymous. In this case. LocalAddress. You must enable checkpoint events at the server level in the Server.xml files. . Set this element on an edge server or an intermediate origin server to control the caching behavior. If a reverse DNS look up fails to return the domain as part of the host name. The edge server caches content locally to aid performance. Contained elements CheckInterval. especially for vod (video on demand) applications. This element controls whether the cached streams are written to disk. AppsDir. The default value of the enabled attribute is false. Set the enable attribute to true to turn on checkpoint events in logs.

c:\on2</Streams> <Streams key="B">vod.5 CONFIGURATION AND ADMINISTRATION GUIDE 184 XML configuration files reference Example <EdgeAutoDiscovery> <Enabled>false</Enabled> <AllowOverride>true</AllowOverride> >WaitTime>1000</WaitTime> </EdgeAutoDiscovery> See also Enabled.0">A</Key> 7. If Enabled is set to true.9.9.9">B</Key> In the VirtualDirectory element. For more information.45. WaitTime Key When Flash Player connects to Flash Media Server.9.0.9">B</Key> 9. See also VirtualKeys . <VirtualDirectory> <Streams key="A">vod.setVirtualPath() entries in the Server-Side ActionScript Language Reference. the keys are A and B: <VirtualKeys> <Key from="WIN <Key from="WIN <Key from="MAC <Key from="MAC </VirtualKeys> 8.0.0.c:\sorenson</Streams> </VirtualDirectory> Note: You can also set these values in a server-side script. The keys can be any alphanumeric value.0.9.0">A</Key> 7.0. You can add Key elements that map Flash Player information to keys. see the Client. if a client with key A requests a stream with the URL NetStream. For more information. see the “Configuring content storage” section of the Configuration and Administration Guide at www.adobe. you map virtual directories used in URLs to physical directories containing streams.play("vod/someMovie"). WaitTime Enabled Specifies whether edge autodiscovery is enabled. AllowOverride.Last updated 3/2/2010 FLASH MEDIA SERVER 3.0" to="WIN to="WIN to="MAC to="MAC 9.0" 8. In the following example.virtualKey and Stream.0" 6.flv. it is served the stream c:\sorenson\someMovie.flv.0.0. Example <Enabled>false</Enabled> See also AllowOverride. it sends the server a string containing its platform and version information. In the following example.45. the edge server tries to determine to which server in a cluster it should connect.0" 6. it is served the stream c:\on2\someMovie. If a client with key B requests a stream with the URL NetStream.0.play("vod/someMovie").0. The default value is false.com/go/learn_fms_content_en.0.

536.) The default size is 65. This value should be larger than the value for CheckInterval. If the value is smaller. . then outgoing connections bind to the value of the INADDR_ANY Windows system variable. for example. The default value is 3600 seconds (60 minutes). Example <MaxAggMsgSize>66536</MaxAggMsgSize> See also AggregateMessages MaxAppInstances Specifies the maximum number of application instances that can be loaded into this virtual host. (Aggregate messages must be enabled. The default number is 15.000 application instances. The LocalAddress element lets you allocate incoming and outgoing connections to different network interfaces. in seconds. See also MaxAggMsgSize Specifies the size in bytes of aggregate messages returned from the edge cache. Aggregate messages received directly from the origin server are returned as is and their size is determined by the origin server settings for aggregate message size. This strategy is useful when configuring an edge to either transparently pass on or intercept requests and responses. Contained elements LogInterval Specifies how often to log a checkpoint. Contains elements that control logging. If the LocalAddress element is not specified. This setting only applies to messages retrieved from the disk cache.Last updated 3/2/2010 FLASH MEDIA SERVER 3. See also Proxy Logging Container element. A chat application. because each chat room represents a separate instance of the application on the server. the server logs a checkpoint every check interval. A Flash SWF file defines which application instance it is connecting to by the parameters it includes with its ActionScript connect call.5 CONFIGURATION AND ADMINISTRATION GUIDE 185 XML configuration files reference LocalAddress This element binds an outgoing edge connection to a specific local IP address. might require more than one instance.

5 CONFIGURATION AND ADMINISTRATION GUIDE 186 XML configuration files reference Example <MaxAppInstances>15000</MaxAppInstances> See also MaxConnections. AppInstanceGC MaxConnections Specifies the maximum number of clients that can connect to this virtual host. the server uses the value 1200 seconds (20 minutes). which represents an unlimited number of connections.xml file.xml file. Connections are denied if the specified limit is exceeded. MaxSharedObjects. before a client is disconnected. . MaxStreams. in seconds. Example <MaxConnections>-1</MaxConnections> See also MaxAppInstances. MaxStreams. MaxEdgeConnections.xml file overrides the value of the MaxIdleTime element in the Server. MaxStreams. The maximum number of allowed connections is encoded in the license file. MaxSharedObjects. Example <MaxEdgeConnections>1</MaxEdgeConnections> See also MaxConnections. the server uses the value in the Server. Example <MaxIdleTime>3600</MaxIdleTime> See also AutoCloseIdleClients MaxSharedObjects Specifies the maximum number of shared objects that can be created. This number is enforced by the license key. The default number of shared objects is 50. AppInstanceGC MaxEdgeConnections Specifies the maximum number of connections that can remotely connect to this virtual host.Last updated 3/2/2010 FLASH MEDIA SERVER 3. A different value can be set for each virtual host. The default number is -1.xml file. The value for the MaxIdleTime element in the Vhost. MaxEdgeConnections. The default idle time is 3600 seconds (60 minutes). MaxAppInstances. MaxSharedObjects. AppInstanceGC MaxIdleTime Specifies the maximum idle time allowed. If you set a value lower than 60 seconds. If no value is set for this element in the Vhost.000.

RouteTable. AppInstanceGC MaxSize Specifies the maximum allowed size of the disk cache. LocalAddress.Last updated 3/2/2010 FLASH MEDIA SERVER 3. See also MaxStreams Specifies the maximum number of streams that can be created. • When the Mode element is set to remote. Example <Mode>local</Mode> See also Anonymous. AppInstanceGC Mode The Mode element configures whether the server runs as an origin server or as an edge server. Example <MaxStreams>250000</MaxStreams> See also MaxConnections. MaxEdgeConnections. • If the Mode element is undefined. The Mode element can be set to local or remote. in gigabytes. MaxStreams. The default setting is local. . The value must be an absolute path.000. EdgeAutoDiscovery Path Specifies the physical location of the proxy cache. CacheDir. MaxSharedObjects. A value of -1 specifies no maximum. Flash Media Server runs its applications locally and is called an origin server. • When the Mode element is set to local. The default number of streams is 250. Relative paths are ignored and the server uses the default folder. The default value is 32 gigabytes. the virtual host is evaluated as an alias for the default virtual host and assumes its configuration.5 CONFIGURATION AND ADMINISTRATION GUIDE 187 XML configuration files reference Example <MaxSharedObjects>50000</MaxSharedObjects> See also MaxConnections. MaxAppInstances. By default. A value of 0 disables the disk cache. the location is RootInstall/cache/. MaxAppInstances. The server does LRU (least recently used) cleanup of the cache to keep it under the maximum size. the server behaves as an edge server that connects to the applications running on an origin server.

however. LocalAddress. Implicit proxies hide the routing information from the clients. Contained elements Mode. The elements nested in this section configure this virtual host as an edge server that can forward connection requests from applications running on one remote server to another server. it behaves locally as a remote server. A request can be for metadata. AppInstanceGC. SSL. MaxStreams. RequestTimeout RequestTimeout The maximum amount of time. in seconds. content. Edge servers are configured with the RouteEntry element to direct connections to another destination. MaxEdgeConnections. See also CacheDir ResourceLimits Container element. If this virtual host is configured to run in remote mode and you want to configure the properties of an outgoing SSL connection to an upstream server. You can also add the protocol attribute to an individual RouteEntry element to specify how the edge server reroutes requests. Note: Whenever a virtual host is configured as an edge server. Contained elements MaxConnections. EdgeAutoDiscovery. RouteTable. The RouteTable element contains the RouteEntry elements that control where the edge server reroutes requests. This value -1 specifies an unlimited amount of time (no timeout). and so on. AggregateMessages. Examples This example shows how you can configure the edge to route all connections to the host foo to the host bar. If no protocol is specified. . the server waits for a response to a request from an upstream server. MaxSharedObjects. MaxAppInstances. The default value is 2 seconds.xml file. CacheDir. the SSL connection to upstream servers will use the default configuration specified in the SSL section of the Server. RouteEntry Instructs the edge server to forward the connection request to one server’s IP address and port number [host:port] to a different IP address and port number. as demonstrated in the following examples.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Flash Media Server applies the protocol specified in the RouteTable element.5 CONFIGURATION AND ADMINISTRATION GUIDE 188 XML configuration files reference See also Proxy Container element. The elements in this section specify the maximum resource limits for this virtual host. The connection syntax for this element is flexible. Anonymous.

foo:1935</RouteEntry> The example instructs the server to route connections to any host on any port to the specified host on port 1936. The attribute is set to "" (an empty string). • Specifying rtmps instructs the edge to use a secure outgoing connection. Its effect is to reject all connections destined for foo:80. The protocol attribute specifies the protocol to use for the outgoing connection.bar:80</RouteEntry> </RouteTable> </Proxy> Use of the wildcard character * to replace host and port. even if the incoming connection was secure. Flash Media Server applies the protocol configured in the RouteTable list unless the mapping for a particular RouteEntry element overrides it. • If the incoming connection was not secure.The example shows how to route connections destined for any host on any port to port 1935 on the host foo. You can override the security status for a connection mapping by specifying a protocol attribute in a RouteEntry element. • Specifying rtmp instructs the edge not to use a secure outgoing connection. The RouteTable element can be left empty or it can contain one or more RouteEntry elements. and to route connections destined for any host on any port to the same host on port 80. For example. Administrators use these elements to route connections to the desired destination. then the outgoing connection will also be secure. even if the incoming connection was not secure. . or rtmps for a secure connection. • Specifying "" (an empty string) means preserving the security status of the incoming connection. <RouteEntry>*:*. rtmp for a connection that isn’t secure.5 CONFIGURATION AND ADMINISTRATION GUIDE 189 XML configuration files reference <Proxy> <RouteTable protocol=""> <RouteEntry>foo:1935. the outgoing connection will not be secure.Last updated 3/2/2010 FLASH MEDIA SERVER 3. <RouteEntry>*:*. <RouteTable protocol="rtmp"> or <RouteTable protocol="rtmps"> The RouteEntry elements nested under the RouteTable element specify the routing information for the edge server. <RouteEntry>*:*.null</RouteEntry> See also RouteTable RouteTable Container element.*:80</RouteEntry> The example instructs the server to route a host:port combination to null. if you were to connect to foo:1935.*:1936</RouteEntry> The example instructs the server to use the values for host and port on the left side as the values for host and port on the right side. <RouteEntry>foo:80. By default. • If the incoming connection was secure. the connection would be routed to foo:1936.

When Flash Media Server acts as a client to make an outgoing SSL connection.xml file. SSLVerifyDepth SSLCACertificateFile Specifies the name of a file that contains one or more CA (Certificate Authority) digital certificates in PEM (Privacy Enhanced Mail) encryption format.xml to the corresponding SSL section in the Vhost.console . Contained elements SSLCACertificateFile. the SSL information in the vhost.xml file. SSLCACertificatePath Specifies the name of a directory containing CA certificates. Flash Media Server uses the SSL elements in the Vhost. .Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file to configure the connection. see SSL. For Win32 only: If this element is empty.xml file match the SSL elements in the Server. Each file in the directory must contain only a single CA certificate.initialize from the command line.xml file are not present. • If the SSL elements in an edge’s Vhost. You can also override the configuration for outgoing SSL connections for an individual virtual host in Vhost. SSLCipherSuite.xml by copying the SSL elements in Server. Flash Media Server uses the default values specified in the SSL section of Server.xml file is not evaluated. Note: When Flash Media Server is running in local mode as an origin server. If a virtual host is running in remote mode as an edge server and you want to configure the properties of an outgoing SSL connection to an upstream server.xml file. attempts are made to find CA certificates in the certs directory located at the same level as the conf directory.xml to configure the SSL connection to upstream servers. • If the SSL elements in the Vhost. The Windows certificate store can be imported into this directory by running FMSMaster . the following sequence of events takes place: • The SSL elements in the Vhost.xml file override the SSL elements in the Server. Flash Media Server uses the default values for SSL in the Server.xml. • If the SSL elements in the Vhost. SSLVerifyCertificate. then you must enable this section and configure its SSL elements appropriately. File names must be the hash with “0” as the file extension. SSLCipherSuite Specifies the suite of encryption ciphers that the server uses to secure communications.xml file are evaluated first. SSLCACertificatePath.xml file to configure the connection. For more information on the SSL elements in Server.5 CONFIGURATION AND ADMINISTRATION GUIDE 190 XML configuration files reference Contained elements RouteEntry SSL Container element.

digest type. • If ! is used. The cipher list consists of one or more cipher strings separated by colons. or one of a selected number of aliases for common groupings. The ciphers deleted can never reappear in the list even if they are explicitly stated. For example. then the ciphers are deleted from the list. but block those using anonymous Diffie-Hellman authentication. then the ciphers are permanently deleted from the list. but some or all of the ciphers can be added again later. or cipher suites of a certain type. the server does not evaluate them.Last updated 3/2/2010 FLASH MEDIA SERVER 3. there are special keywords and prefixes. • If none of these characters is present. • If the list includes any ciphers already present. • If . The default cipher list instructs the server to accept all ciphers. • If + is used. In addition. • Lists of cipher suites can be combined in a single cipher string using the + character as a logical and operation. This sequencing allows clients to negotiate for the strongest cipher that both they and the server can accept. then the string is just interpreted as a list of ciphers to be appended to the current preference list. • Each cipher string can be optionally preceded by the characters !. in the order of preference. SHA1 represents all cipher suites using the digest algorithm SHA1. -. block MD5 hashing. Commas or spaces are also acceptable separators. The server evaluates both strings as equivalent. Example This cipher string instructs the server to accept all ciphers except those using anonymous or ephemeral Diffie-Hellman key exchange. • It can represent a list of cipher suites containing a certain algorithm. block export ciphers. including only those ciphers the server is prepared to accept. authentication method. This option doesn't add any new ciphers—it just moves matching existing ones. The components can be combined with the appropriate prefixes to create a list of ciphers. The string of ciphers can take several different forms. and sort ciphers by strength from highest to lowest level of encryption. <SSLCipherSuite>ALL:!ADH:!EDH</SSLCipherSuite> These cipher strings instruct the server to accept only RSA key exchange and refuse export or null encryption. <SSLCipherSuite>ALL:+HIGH:+MEDIUM:+LOW:+EXP:+NULL</SSLCipherSuite> .5 CONFIGURATION AND ADMINISTRATION GUIDE 191 XML configuration files reference This element is a colon-delimited list of encryption resources. Important: Contact Adobe Support before changing the default settings. Each item in the cipher list specifies the inclusion or exclusion of an algorithm or cipher. For example. the keyword ALL specifies all ciphers. but colons are normally used. and SSLv3 represents all SSL v3 algorithms. such as RC4-SHA. and the prefix ! removes the cipher from the list. SHA1+DES represents all cipher suites containing the SHA1 and DES algorithms.is used. encryption method. block low-strength ciphers. <SSLCipherSuite>RSA:!NULL!EXP</SSLCipherSuite> <SSLCipherSuite>RSA:LOW:MEDIUM:HIGH</SSLCipherSuite> This cipher list instructs the server to accept all ciphers but place them in order of decreasing strength. • The cipher string @STRENGTH sorts the current cipher list in order of the length of the encryption algorithm key. For example. or +. then the ciphers are moved to the end of the list. • It can consist of a single cipher suite. such as a key-exchange algorithm.

Last updated 3/2/2010 FLASH MEDIA SERVER 3. Key exchange algorithm kRSA kDHr kDHd RSA DH EDH ADH Description Key exchange Diffie-Hellman key exchange with RSA key Diffie-Hellman key exchange with DSA key Ephemeral Diffie-Hellman key exchange RSA key exchange Ephemeral Diffie-Hellman key exchange Anonymous Diffie-Hellman key exchange Authentication methods aNULL aRSA aDSS aDH Description No authentication RSA authentication DSS authentication Diffie-Hellman authentication Encryption methods eNULL DES 3DES RC4 RC2 IDEA NULL EXP LOW MEDIUM HIGH Description No encoding DES encoding Triple-DES encoding RC4 encoding RC2 encoding IDEA encoding No encryption All export ciphers (40-bit encryption) Low-strength ciphers (no export. with the high being preferred.5 CONFIGURATION AND ADMINISTRATION GUIDE 192 XML configuration files reference This string instructs the server to accept only high. <SSLCipherSuite>ALL:+SSLv2</SSLCipherSuite> The following is the complete list of components that the server can evaluate.and medium-strength encryption. <SSLCipherSuite>ALL:+HIGH:!LOW:!EXP:!NULL</SSLCipherSuite> This string instructs the server to accept all ciphers but to order them so that SSLv2 ciphers come after SSLv3 ciphers. and reject export-strength versions. DES) 128-bit encryption Triple-DES encoding .

If a self-signed root certificate cannot be found within this depth. The Streams element enables you to specify a virtual directory for stored stream resources used by more than one application.0 ciphers All ciphers using DSS authentication SSLVerifyCertificate Specifies whether the certificate returned by the server should be verified. The default value is 9. To disable certificate verification. the server checks for a virtual directory mapping for foo. Note: Disabling certificate verification can result in security problems. SSLVerifyDepth Specifies the maximum depth of the certificate chain to accept. the server adds one. If there is no virtual directory for foo/bar.5 CONFIGURATION AND ADMINISTRATION GUIDE 193 XML configuration files reference Digest types MD5 SHA1 SHA Description MD5 hash function SHA1 hash function SHA hash function Additional aliases All SSLv2 SSLv3 DSS Description All ciphers All SSL version 2. For more information. <Streams>foo. By using a virtual directory.adobe. Certificate verification is enabled by default.flv. specify false. The stream named foo/bar maps to the physical file c:\data\bar. Note: If the virtual directory you specify does not end with a backslash. the server tries to find a virtual directory mapping for foo/bar.flv.bar maps to the file c:\data\bar\x.Last updated 3/2/2010 FLASH MEDIA SERVER 3.com/go/learn_fms_content_en. Examples The following configuration maps all streams whose names begin with foo/ to the physical directory c:\data. the stream foo. Since a virtual directory mapping does exist for foo. you specify a relative path that points to a shared directory that multiple applications can access. see the “Configuring content storage” section of the Configuration and Administration Guide at www. You can specify multiple virtual directory mappings for streams by adding additional Streams elements—one for each virtual directory mapping.c:\data</Streams> If a stream is named foo/bar/x. certificate verification fails.0 ciphers All SSL version 3. Example <SSLVerifyDepth>9</SSLVerifyDepth> Streams Specifies the virtual directory mapping for recorded streams. .

VirtualKeys Lets you map Flash Player versions to keys. For detailed information on mapping virtual directories. Example For example.5 CONFIGURATION AND ADMINISTRATION GUIDE 194 XML configuration files reference The following configuration maps streams whose paths begin with common/ to the folder C:\flashmediaserver\myapplications\shared\resources. For more information. using the following VirtualDirectory XML. This element contains all the configuration elements for the Vhost. Note: If you are mapping a virtual directory to a drive on another computer.xml file. Virtual directories let you share resources among applications.flv: <VirtualDirectory> <Streams>vod.d:\sharedStreams</Streams> </VirtualDirectory> Contained elements Streams See also VirtualKeys VirtualHost Root element of the Vhost. When the beginning portion of a resource’s URI matches a virtual directory. For more information. <Streams>common.Last updated 3/2/2010 FLASH MEDIA SERVER 3. see VirtualKeys.C:\flashmediaserver\myapplications\shared\resources\</Streams> If the application “videoConference” refers to an item common/video/recorded/june5 and the application “collaboration” refers to common/video/recorded/june5. Use these elements to deliver streams to clients based on Flash Player version. The keys are used in the VirtualDirectory element to map URLs to physical locations on a server. they both point to the same item C:\flashmediaserver\myapplications\shared\resources\video\recorded\june5\. make sure that the computer running Flash Media Server has the right permissions to access the other computer. Flash Media Server serves the resource from the physical directory. the server would play the file d:\sharedStreams\myVideo. see “Mapping directories to network drives” on page 34. See also VirtualDirectory VirtualDirectory Specifies virtual directory mappings for resources such as recorded streams. You can use the VirtualDirectory element in conjunction with the VirtualKeys element to serve content based on Flash Player version information.play("vod/myVideo"). if a client called NetStream.xml file. see “Mapping virtual directories to physical directories” on page 35. .

perform a UDP broadcast. Do not set this number too low.Last updated 3/2/2010 FLASH MEDIA SERVER 3. The number must be long enough to establish a TCP connection. and return an XML response. collect the UDP responses. AllowOverride . Example <WaitTime>1000</WaitTime> See also Enabled.5 CONFIGURATION AND ADMINISTRATION GUIDE 195 XML configuration files reference Contained elements Key WaitTime Specifies length to wait in milliseconds for edge autodiscovery.

The call method failed. Unlock called without matching lock for shared object %1$S.log. edge. Received interrupt signal. Message ID 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 Description Received termination signal. Method not found (%1$S). Dropping application (%1$S) message. . see “Access logs” on page 57 and “Application logs” on page 63. Reinitializing server. service will be stopped. core. Failed to create listener for adaptor %1$S. Failed to stop virtual host (%1$S).log) record information about server operations. port %3$S: %4$S. resultObj.log. Service Control Manager failed (%1$S: %2$S). rejecting message (%1$S). invalid parameters: call(methodName[. or users that you can use for debugging. Invalid application. Server starting. For status codes related to applications. admin..xx.xx. process will be terminated. Ignoring message from client during authentication. instances. Nested lock for shared object %1$S. Failed to start the following listeners for adaptor %1$S: %2$S. lock count %2$S. server shutdown in progress. Response object not found (%1$S). Server stopped %1$S.log. Service Control Manager reported (%1$S: %2$S). and httpcache. Failed to execute method (%1$S). Missing unlock for shared object %1$S. Command name not found in the message. Server initialization failed. server shutdown in progress.log.xx. Error during shutdown process. Message IDs can be useful for administrators who want to write error-handling scripts. pn]). lock count %2$S. Clients not allowed to broadcast message. Asynchronous I/O operation failed (%1$S: %2$S).. Failed to stop %1$S listeners for adaptor %2$S. IP %2$S.Last updated 3/2/2010 196 Chapter 8: Diagnostic Log Messages Message IDs in diagnostic logs The IDs of messages that appear in the diagnostic log files (master. Failed to create thread (%1$S). p1.xx.xx.

Admin request received from an invalid Administration Server.Call. Rejecting connection from %1$S to %2$S. Invalid proxy object. Connect from host (%1$S) not allowed. Administrator login failed for user %1$S. Write access denied for stream %1$S. Adaptor already defined with the name %1$S. %2$S ): %3$S. terminating connection: %1$S. NetConnection. Invalid parameters to %1$S method. Unknown %1$S command issued for stream %2$S (application %3$S). Parse error at line %1$S: %2$S. Resource limit violation. Unable to create shared object: %1$S. Write access denied for shared object %1$S. Failed to open configuration file: %1$S. Invalid user ID (%1$S). Script execution is taking too long. No adaptors defined. Read access denied for shared object %1$S. Failed to change password: %1$S. Failed to create administrator: %1$S. Failed to start virtual host (%1$S). Virtual host %1$S is not available. Bad network data. Failed to remove administrator: %1$S. Unable to create stream: %1$S. Resource limit violation.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Reserved property (%1$S). Alive. Exception while processing message. Read access denied for stream %1$S. Connect failed ( %1$S. Illegal subscriber: %1$S cannot subscribe to %2$S. Failed to start server. connection may be lost (%1$S).Failed Invalid application name (%1$S). .5 CONFIGURATION AND ADMINISTRATION GUIDE 197 Diagnostic Log Messages Message ID 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 Description Connection to %1$S lost.

Audio receiving disabled (stream ID: %1$S). (%2$S. Failed to unload application %1$S. Stream %1$S has been idling for %2$S second(s). stream ID: %1$S. Pausing %1$S. Illegal access property (%1$S). Invalid virtual host alias : %1$S. Recording %1$S. Unpausing %1$S. Connection to Flash Media Server has been disconnected.Admin. Failed to record %1$S. %2$S). Failed to load application %1$S. Failed to restart virtual host (%1$S). NetStream deleted (stream ID: %1$S). %1$S is now published. %3$S) : Connection rejected to application instance %1$S. . Stopped playing %1$S.CommandFailed Invalid parameters to %1$S method. Play stop failed.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 198 Diagnostic Log Messages Message ID 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 Description NetConnection. (%2$S. Stopped recording %1$S. Publishing %1$S. Started playing %1$S. Failed to publish %1$S. %1$S applications unloaded. Connection rejected: maximum user limit reached for application instance %1$S. %1$S is now unpublished. Error registering class: name mismatch (%1$S. New NetStream created (stream ID: %1$S). Failed to play %1$S (stream ID: %2$S). Playing and resetting %1$S. Admin user requires valid user name and password. Audio receiving enabled (stream ID: %1$S). %3$S) : Failed to load application instance %1$S. Client already connected to an application. Failed to play (stream ID: %1$S).

Flash Media Server is already running or other processes are using the same ports.5 CONFIGURATION AND ADMINISTRATION GUIDE 199 Diagnostic Log Messages Message ID 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 Description Failed to enable audio receiving (stream ID: %1$S). Failed to seek %1$S (stream ID: %2$S). (%2$S. Failed to start listeners for adaptor %1$S. Video receiving disabled (stream ID: %1$S). Connection failed. Unknown exception caught in %1$S. Failed to play %1$S. Invalid NetStream ID (%1$S). Configuration file not found: %1$S Invalid configuration file: %1$S Server aborted. Set video fps to %1$S (stream ID: %2$S). 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 . Failed to create adaptor: %1$S. Failed to open shared object file (%1$S) for write. Failed to stop playing (stream ID: %1$S). Connection succeeded.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Check the JavaScript runtime size for this application in the configuration file. Seeking %1$S (stream ID: %2$S). JavaScript runtime is out of memory. Invalid schedule event format (%1$S). server shutting down instance (Adaptor: %1$S. %3$S): Invalid application name (%1$S). Failed to seek (stream ID: %1$S). stream not found. Failed to flush shared object (%1$S). Failed to initialize listeners for adaptor %1$. Invalid stream name (%1$S). Take action. Failed to open shared object file (%1$S) for read. Video receiving enabled (stream ID: %1$S). JavaScript engine runtime is low on free memory. Server started (%1$S). Invalid shared object (%1$S). Configuration error for adaptor %1$S: IP %2$S and port %3$S are already in use. Failed to receive video (stream ID: %1$S). VHost: %2$S. Invalid method name (%1$S). App: %3$S). Insufficient admin privileges to perform %1$S command.

shared object (%1$S) has been locked for %2$S sec. Invalid license key: %1$S License key specified does not allow multiple adaptor support. (%2$S.5 CONFIGURATION AND ADMINISTRATION GUIDE 200 Diagnostic Log Messages Message ID 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 Description Failed to initialize shared object from persistent store (%1$S).Call. (%2$S. Invalid shared object file (%1$S). Server shutting down. Invalid object name (stream ID: %1$S). . invalid arguments.Success Unable to locate server configuration file during startup. Trial run expired. invalid arguments. Pause %1$S failed.AccessDenied NetConnection. %3$S): Resource limit violation. (%2$S. (%2$S.BadValue Publish %1$S failed. Multiprocessor support available only in Enterprise Edition.Call. Potential deadlock. Shutting down instance: %1$S. %3$S): Application (%1$S) is currently offline. Invalid admin command: %1$S. Unable to create directory %1$S. Command successful. %3$S): Resource limit violation. Failed to play %1$S. %3$S): Resource limit violation. NetConnection. Preload application aborted. Rejecting connection. Beta expired. (%2$S. shared object(%1$S) lock reset to unlocked.Call. index file not found or mismatch. Server shutdown failed. License key specified does not allow multiple virtual host support. %3$S/%1$S): Current virtual host bandwidth usage exceeds max limit set.Last updated 3/2/2010 FLASH MEDIA SERVER 3. (%2$S. Breaking potential deadlock. Unable to load new application: %1$S. Unable to create new application instance: %1$S. Admin command setApplicationState failed for %1$S. Unable to locate script file: %1$S. %3$S/%1$S): Current server bandwidth usage exceeds license limit set. Rejecting connection. Rejecting connection to: %1$S. NetConnection. (%2$S. %3$S): Application (%1$S) is not defined. Script is taking too long to process the event. Failed to load admin application.

Rejecting connection to: %1$S. Unloaded application instance %1$S. Error from %1$S:%2$S. Pending queue size limit %1$S reached. Failed to remove application: %1$S. System memory load (%1$S) is now below the maximum threshold. System memory load (%1$S) is high. Invalid shared object name (%1$S). Exception while processing message: %1$S. Info from %1$S:%2$S. Adaptor (%1$S) has an SSL configuration error on port %2$S. %3$S): Max connections allowed exceed license limit. Restarting listener (%1$S): %2$S. Instance will be unloaded: %1$S. Warning from %1$S:%2$S.Last updated 3/2/2010 FLASH MEDIA SERVER 3. adaptor not found: %2$S. Application directory does not exist: %1$S Using default application directory: %1$S Application instance is not loaded: %1$S Error: command message sent before client connection has been accepted. Failed to play %1$S.5 CONFIGURATION AND ADMINISTRATION GUIDE 201 Diagnostic Log Messages Message ID 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 Description License key has expired. An internal version control error has occurred. Invalid cryptographic accelerator: %1$S. Failed to initialize cryptographic accelerator: %1$S. Failed to seed the pseudorandom number generator. Generic message code. [Virtual host (%1$S). Exception caught in %1$S while processing streaming data inside %2$S. Failed login attempt from %1$S at %2$S. Failed to execute admin command: %1$S. Rejecting connection request Host: %2$S:%3$S. Attempt to reconnect to Flash Media Server. Unknown exception occurred. Out of memory: %1$S. Max Allowed %2$S. Client to server bandwidth limit exceeded. Failed to record %1$S. Listener started (%1$S): %2$S. Invalid value set for configuration key: %1$S = %2$S. (%2$S. Current %3$S] . no space left on device. using %3$S.

[Virtual host (%1$S). Invalid argument %2$S. arguments: %2$S. as auto commit is set to false. NFR licences cannot be mixed with any other kind.5 CONFIGURATION AND ADMINISTRATION GUIDE 202 Diagnostic Log Messages Message ID 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 Description Server to client bandwidth limit exceeded. Virtual host (%1$S) does not exist. Core (%1$S) is no longer active. 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 . Max Allowed %2$S. Shared memory heap (%1$S) has exceeded 90 usage. Failed to start edge: %1$S %2$S. Failed to play stream %1$S: Recorded mode not supported. Duplicate license key: %1$S Expired license key: %1$S No primary license key found. %2$S File operation %1$S failed. Shared object %1$S has changed and is not being saved. Failed to start core: %1$S %2$S.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Connection rejected by server. File operation %1$S failed. Invalid admin stream: %1$S . File operation %1$S failed. Switching to Developer Edition. Core (%1$S) started. Current version %2$S. Disconnecting client. Missing arguments to %1$S method. Commercial and Educational licenses cannot be mixed. OEM licences cannot be mixed with any other kind. Switching to Developer Edition. Message queue is too large. Switching to Developer Edition. Switching to Developer Edition. Server memory usage too high. Too many trial licenses detected. File is in closed state (%2$S). Log aborted. File object creation failed (%1$S). Edge (%1$S) is no longer active. Edge (%1$S) started. %1$S failed. Personal and Professional licenses cannot be mixed. Administrator (%1$S) already exists. Switching to Developer Edition. Invalid substitution variable: %1$S Resetting service failure action from %1$S to %2$S. Last saved version %3$S. arguments: %2$S. Consider increasing the heap size to prevent future memory allocation failures. Failed to open log file. Reason: %1$S. Object is not a file (%2$S). Switching to Developer Edition. Current %3$S] Adaptor (%1$S) does not exist.

Killing core now.5 CONFIGURATION AND ADMINISTRATION GUIDE 203 Diagnostic Log Messages Message ID 1228 1229 1230 1231 1132 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 Description Failed to create process mutex. Edge disconnected from core (%1$S). Core (%1$S) connection to admin accepted.Last updated 3/2/2010 FLASH MEDIA SERVER 3. Socket migration to core (%1$S) failed. Command (%1$S) timed out. . Failed to send connect response to core %1$S. create a new one. Registering core (%1$S). Core (%1$S) connected to admin. Core (%1$S) shutdown failed. Connection from core %1$S accepted. Core (%1$S) socket migration failed. Core (%1$S) connection to admin failed. Connection from core %1$S received. Recovering core %1$S with %2$S failure[s] after %3$S seconds! Core (%1$S) did not shut down as expected. Core (%1$S) received close command from admin. Starting admin app on core (%1$S). Core (%1$S): Failed to initiate connection to admin. Proxy to core (%1$S) failed. Process (%1$S): shared memory (%2$S) init failed. Process (%1$S): failed to map view of shared memory (%2$S). Connection to admin received. Core (%1$S) disconnecting from admin. Recovering edge %1$S with %2$S failure[s] after %3$S seconds! Edge (%1$S) %2$S experienced %3$S failure[s]! Core (%1$S) %2$S experienced %3$S failure[s]! Core (%1$S) %2$S is not responding and is being restarted! Core (%1$S) is no longer active. Core (%1$S) disconnected: %2$S. Core (%1$S) failed to connect to admin. Core (%1$S) sending register command to edge. Core (%1$S) disconnected from edge. Core (%1$S) connecting to admin. Core (%1$S) failed to establish proxy to edge.

SWF verification failed.Last updated 3/2/2010 FLASH MEDIA SERVER 3. SWF verification timeout. disconnecting client. disconnecting client. OpenProcess(PROCESS_QUERY_INFORMATION) failed for pid (%1$S) with %2$S. . disconnecting client.5 CONFIGURATION AND ADMINISTRATION GUIDE 204 Diagnostic Log Messages Message ID 1262 1263 1373 1374 1375 Description OpenProcess(PROCESS_TERMINATE) failed with %1$S. SWF verification unsupported by client.

xml file description of tags 80 file structure 80 Adaptor. 59 Adaptor.Last updated 3/2/2010 205 Index A access logs 29.xml file description of tags 93 Application.xml tags Adaptor 80 Allow 80 Deny 81 Edge 81 Enable 81 EnableAltVhost 82 HostPort 82 HostPortList 83 HTTPIdent 83 HTTPIdent2 84 HTTPNull 84 HTTPTunnel 85 HTTPUserInfo 85 IdleAckInterval 86 IdlePostInterval 86 IdleTimeout 86 MaxFailures 87 MaxSize 87 MaxWriteDelay 87 MimeType 88 NeedClose 88 NodeID 88 Order 88 Path 89 RecoveryTime 89 Redirect 89 ResourceLimits 89 RTMP 90 RTMPE 90 SetCookie 90 SSL 90 SSLCertificateFile 91 SSLCertificateKeyFile 91 SSLCipherSuite 91 SSLPassPhrase 92 SSLServerCtx 92 SSLSessionTimeout 92 UpdateInterval 93 WriteBufferSize 93 adaptors about 6 adding 7 configuring 80 creating 8 directory structure 7 administration APIs about 76 allowing use of 30 calling over HTTP 77 calling over RTMP 78 HTTP parameters 77 permissions 76 sample application 78 Administration Console about 40 application log 43 connecting to 40 debug connection 30 refresh rate 41 view applications 42 view server performance 51 Administration Server administrators 49 APIs 40 connecting to 40 default port 40 administrators defining in Administration Console 49 managing 49 Apache HTTP server 37. 57. 38 application instances about 6 log messages 43 performance 47 reloading 43 view in Administration Console 42 application logs 63 Application object. defining 31 Application.xml tags Access 94 AccumulatedFrames 94 AggregateMessages (Client) 94 AggregateMessages (Queue) 94 Allow 95 AllowDebugDefault 95 AllowHTTPTunnel 95 Application 96 Audio 96 AutoCloseIdleClients 96 AutoCommit 97 AutoSampleAccess 97 Bandwidth 97 BandwidthCap 98 BandwidthDetection 98 Bits 99 BufferRatio 99 Cache 99 CachePrefix 99 CacheUpdateInterval 100 Client 101 ClientToServer (Bandwidth) 101 ClientToServer (BandwidthCap) 101 CombineSamples 102 Connections 102 DataSize 102 Debug 102 DirLevelSWFScan 103 DisallowProtocols 103 Distribute 103 DuplicateDir 104 Duration 104 EnhancedSeek 105 Exception 105 FileObject 106 FinalHashTimeout 106 FirstHashTimeout 106 FlushOnData 106 FolderAccess 106 HiCPU 106 Host 107 HTTP 107 HTTP1_0 107 HTTPTunnel 107 IdleAckInterval 108 IdlePostInterval 108 Interface 109 Interval 109 .

57 clients closing idle connections of 14 limiting connections from 14 view active 45 clusters 1 configuration files Adaptor. in video files 71 Event Viewer (Windows) 67 . combining 13 B backing up log files 56 bandwidth detection.xml 175 Vhost. 146 D debug connection 30 diagnostic logs 64 E edge servers cache 73 chain 5 configuring 2 connecting to 4 deploying 1 file cache (on Linux) 74 file cache (Windows) 73 environmental variables 11 Errors.xml 178 connections closing idle 14 limiting 14.xml 93 directory structure 6 editing 9 Logger. native 32 C CGI programs 39 checkpoint events 29. using 23 CrossDomainPath (Server.xml 80 Application.xml 140 symbols in 10 Users. 155 content storage configuring 33 mapping directories 34 virtual directories 35 core processes assigning 16 configuring 16 distributing 17 maximum number of 18 rolling over 18 cross-domain XML file.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml) 23.xml 133 Server.5 CONFIGURATION AND ADMINISTRATION GUIDE 206 Index JSEngine 109 KeyFrameInterval 110 LifeTime 110 Live (MsgQueue) 111 Live (StreamManager) 110 LoadOnStartup 111 LockTimeout 111 LoCPU 111 Max 112 MaxAggMsgSize 112 MaxAppIdleTime 112 MaxAudioLatency 112 MaxBufferRetries 113 MaxCores 113 MaxFailures 114 MaxGCSkipCount 114 MaxInitDelay 114 MaxMessagesLosslessvideo 115 MaxPendingDebugConnections 115 MaxProperties 115 MaxPropertySize 115 MaxQueueDelay 116 MaxQueueSize 116 MaxRate 116 MaxSamples 116 MaxSize 116 MaxStreamsBeforeGC 117 MaxTime 117 MaxTimeOut (Connections) 118 MaxTimeOut (JSEngine) 118 MaxUnprocessedChars 118 MaxWait 118 MimeType 119 MinBufferTime (Live) 119 MinBufferTime (Recorded) 119 MinGoodVersion 119 MsgQue 120 NetConnection 120 NotifyAudioStop 120 ObjectEncoding 120 OutChunkSize 121 OverridePublisher 121 Password 121 Port 121 Prioritization 122 Process 122 Proxy 122 PublishTimeout 123 QualifiedStreamsMapping 123 Queue 123 Recorded 123 RecoveryTime 124 Redirect 124 ResyncDepth 124 Reuse 124 RollOver 125 RuntimeSize 125 Scope 125 ScriptLibPath 126 SendDuplicateOnMetaData 126 SendDuplicateStart 127 SendSilence 127 Server 127 ServerToClient (Bandwidth) 127 ServerToClient (BandwidthCap) 127 SharedObjManager 128 StorageDir 128 StreamManager 128 Subscribers 129 SWFFolder 129 SWFVerification 129 ThrottleBoundaryRequest 129 ThrottleDisplayInterval 130 ThrottleLoads 130 TTL 130 Tunnel 130 Type 131 UnrestrictedAuth 131 UpdateInterval 131 UserAgent 131 UserAgentExceptions 131 Username 132 Verbose 132 VideoSampleAccess 132 VirtualDirectory 132 WindowsPerAck 133 WriteBuffSize 133 XMLSocket 133 audio samples.

See server-side scripts security and RTMPE 23 and SSL 24 configuring features 19 limiting domain access to 23 SWF verification 19 serial keys adding 53 server checking status of 67 hierarchy 6 log file 54 managing. 135. See log files M map files 11 mapping virtual directories 35 messages aggregating 13 in diagnostic logs 196 viewing log messages for applications 43 MP4 errors 71 N native bandwidth detection 32 O object properties.xml tags Access 134. 146 AutoCloseIdleClients 143 Cache 144 CheckInterval 144 Connector 144 Content 144 Core 145 CoreExitDelay 145 CoreGC 145 CoreTimeOut 145 CPUMonitor 146 CrossDomainPath 146 Deny 146 Diagnostic 146 DirLevelSWFScan 147 . configuring 16 Server.Last updated 3/2/2010 FLASH MEDIA SERVER 3.xml file configuring 55 description of tags 133 file structure 134 Logger.xml tags Access 140. 136. 138 Application 134 AuthEvent 134 AuthMessage 134 Delimiter 135 Diagnostic 135 Directory 135 DisplayFieldsHeader 136 EscapeFields 136 Events 136 Fields 136 FileIO 137 FileName 137 History 137 HostPort 138 Logger 138 LogServer 138 MaxSize 138 QuoteFields 138 Rename 139 Rotation 139 Schedule 139 ServerID 140 Time 140 logs.xml) 123 Q QualifiedStreamsMapping (Application. 140 Server.xml) 149 FLVCheck tool 69 FMSCheck tool 67 fmsmgr utility 74 H HTTP proxying 38 I IPv6 configuring 30 disabling 162 enabling 162 on Linux 84 L licenses 53 Linux and IPv6 84 using with Flash Media Server 74 load balancing clusters 1 log files and IPv6 56 application 55 backing up 56 configuration files for 55 diagnostic 55 managing 55 messages 196 rotating 56 server server access 55 web server 55 Logger. 179 ACCP 140 ActiveProfile 141 Admin 141 AdminElem 141 AdminServer 141 Allow 141 Application 142 ApplicationGC 142 AuthEvent 143 AuthMessage 143.5 CONFIGURATION AND ADMINISTRATION GUIDE 207 Index F FLV errors 71 FLV files.xml file 55. configurable 31 P performance improving 12 monitoring server 51 permissions administration APIs 76 for administrators 175 PublishTimeout (Application.xml) 123 R RecordsNumber 164 refresh rate 41 RetryNumber 165 RetrySleep 165 rotating log files 56 S scripts. on Linux 74 performance 51 starting and stopping 66 testing 67 viewing events 67 server processes. checking 69 FLVCachePurge (Server.

26 tags in Server. 168.xml tags AdminServer 175 Allow (HTTP Commands) 175 Allow (User) 175 Deny (HTTPCommands) 176 Deny (User) 176 Enable 176 HTTPCommands 176 Order (HTTPCommands) 177 Order (User) 177 Password 177 Root 178 User 178 UserList 178 V variables 11 Vhost.Last updated 3/2/2010 FLASH MEDIA SERVER 3.5 CONFIGURATION AND ADMINISTRATION GUIDE 208 Index ECCP 147 Edge 147 EdgeCore 147 Enable 148 FileCheckInterval 148 FileIO 148 FilePlugin 148 FLVCache 149 FLVCachePurge 149 FLVCacheSize 149 FreeMemRatio 149 FreeRatio 149 GCInterval 150 GID 150 GlobalQueue 150 GlobalRatio 150 HandleCache 150 HostPort 151 HTTP 151 IdleTime 152 IPCQueues 152 LargeMemPool 152 LicenseInfo 153 LicenseInfoEx 153 LocalHost 153 Logging 153 Mask 154 Master 154 MaxAge 154 MaxCacheSize 155 MaxCacheUnits 155 MaxConnectionRate 155 MaxIdleTime 157 MaxInitDelay 157 MaxIOThreads 157 MaxKeyframeCacheSize 158 MaxNumberOfRequests 158 MaxQueueSize 158 MaxSize (FLVCache) 159 MaxSize (HandleCache) 159 MaxSize (RecBuffer) 159 MaxTimestampSkew 159 MaxUnitSize 159 MessageCache 160 MinConnectionThreads 160 MinGoodVersion 161 MinIOThreads 161 MinPoolGC 161 NetworkingIPv6 162 NumCRThreads 162 Order 162 Plugins 163. 190 SSLCipherSuite 169. 190 SSLCACertificatePath 169. 172 SSLCACertificateFile 169.xml tags AggregateMessages 179 Alias 179 AliasList 180 Allow 180 AllowOverride 180 Anonymous 180 . 28 tags in VHost.xml 28 storage directories 34 storageDir element 34 streams cache size 12 chunk size 13 view live 44 U Users.xml file description of tags 175 file structure 175 permissions for admin APIs 76 summary of tags 175 Users. 163. 190 SSLClientCtx 171 SSLRandomSeed 171 SSLSessionCacheGC 172 SSLVerifyCertificate 172. 164.xml file file structure 179 summary of tags 179 Vhost. 193 SSLVerifyDepth 172. 174 Process (Server) 163 Protocol 163 PublicIP 164 RecBuffer 164 RecordsNumber 164 ResourceLimits 165 RetryNumber 165 RetrySleep 165 Root 165 RTMP (AdminServer) 165 RTMP (Connector) 165 RTMP (Protocol) 166 RTMPE 166 Scope 166 SegmentsPool 166 Server 166 ServerDomain 167 Services 167 SmallMemPool 167 SocketGC 167 SocketOverflowBuckets 168 SocketRcvBuff 168 SocketSndBuf 168 SocketTableSize 168 SSL 161.xml 25.xml 27. 193 SWFFolder 172 SWFVerification 173 TerminatingCharacters 173 ThreadPoolGC 173 Time 173 TrimSize 173 TTL 173 UID 174 UpdateInterval 174 UpdateInterval (Cache) 174 server-side scripts and configurable object properties 31 setting storage directories 34 shared objects default location of 34 setting location of 34 view active 46 SSL certificates 25 configuring 24 tags in Adaptor.

5 CONFIGURATION AND ADMINISTRATION GUIDE 209 Index AppInstanceGC 181 AppsDir 181 AutoCloseIdleClients 182 CacheDir 183 DNSSuffix 183 EdgeAutoDiscovery 183 Enabled 184 LocalAddress 185 MaxAggMsgSize 185 MaxAppInstances 185 MaxConnections 186 MaxEdgeConnections 186 MaxIdleTime 186 MaxSharedObjects 186 MaxStreams 187 Mode 187 Proxy 188 ResourceLimits 188 RouteEntry 188 RouteTable 189 SSL 190 Streams 193 VirtualDirectory 194 VirtualHost 194 VirtualKeys 194 WaitTime 195 virtual directories 35 virtual hosts about 6 connecting to 41 creating 8 directory structure 6 VirtualDirectory element 35 W WebDAV 39 Windows Event Viewer 67 WindowsPerAck (Application.xml) 133 .Last updated 3/2/2010 FLASH MEDIA SERVER 3.