previous next

Chapter 26: ISP Hosting

ISP Hosting features provide a way to allot connections to users. If you are an Internet Service Provider (ISP), you can use ISP hosting to deliver streaming media on behalf of your customers. The ISPHosting list contains two other lists: TranslationMounts (which contains one or more lists) and UserLists. Variables are MountPoint, UserPath, and File.

For More Information: ISP Hosting and its settings are described in the ISP Hosting chapter of Helix Universal Server Administration Guide.

Paths for ISP Hosting

ISP Hosting scenarios frequently require special base paths, so you will need to create additional mount points in the FSMount list. Examples are shown in this chapter.

Four items control where Helix Universal Server looks for hosted media:

Through this path of associated elements, the value for /path/ in the user list file is ultimately associated with a base path.

ISP Hosting Configuration

<List Name="ISPHosting">
<List Name="TranslationMounts">
<List Name="ISP Content (Washington users)">
<Var MountPoint="/wa_isp/"/>
<Var UserPath="/wa/"/>
</List>
<List Name="ISP Content (Oregon users)">
<Var MountPoint="/or_isp/"/>
<Var UserPath="/or/"/>
</List>
<List Name="ISP Content (Idaho users)">
<Var MountPoint="/id_isp/"/>
<Var UserPath="/id/"/>
</List>
</List>
<List Name="UserLists">
<Var File1="c:\accounts\commercial\local.txt"/>
<Var File2="c:\accounts\commercial\remote."/>
<Var File3="c:\accounts\personal\local.txt"/>
</List>
</List>

List: ISPHosting

The ISP hosting section.

<List Name="ISPHosting">
...list of translation mounts and user lists...
</List>

Registry Value

config.ISPHosting

Example

<List Name="ISPHosting">...</List>

List: TranslationMounts

The translation mounts section.

<List Name="ISPHosting">
<List Name="TranslationMounts">
...lists of mount points...
</List>
</List>

Registry Value

config.ISPHosting.TranslationMounts

Example

<List Name="TranslationMounts">...</List>

List: Mount Name

The name of the specific translation mount point.

<List Name="ISPHosting">
<List Name="TranslationMounts">
<List Name="
Mount Name">
...lists of mount points...
</List>
</List>
</List>

Registry Value

config.ISPHosting.TranslationMounts.Mount Name 

Example

<List Name="ISP Content (Washington users)">...</List>

Var: MountPoint

Mount point associated with Var: UserPath. This mount point can be set to the default mount points /, /secure, or /fsforcache, or it can be set to any mount point you specifically create for ISP hosting. See "ISP Hosting Mount Points" for more information.

Tag Syntax

<Var MountPoint="Mount Point"/>

Possible Values

Example

<Var MountPoint="/wa_isp/"/>

Var: UserPath

The value for this variable is the same value as /path/ in the user list file.

Tag Syntax

<Var UserPath="User Path"/>

Possible Values

Example

<Var UserPath="/wa/"/>

List: UserLists

The user lists section.

<List Name="ISPHosting">
<List Name="UserLists">
...variables showing locations of user files...
</List>
</List>

Registry Value

config.ISPHosting.UserLists

Example

<List Name="UserLists">...</List>

Var: FileX

Specifies the location of a user list file. Helix Universal Server loads the user lists in the order they appear in the configuration file; if the same user name appears in more than one list, Helix Universal Server uses the settings in the last user list.

Tag Syntax

<Var FileX="Path"/>

Possible Values

Example

<Var File1="c:\accounts\commercial\local.txt"/>
<Var File1="c:\accounts\commercial\remote."/>

ISP Hosting Mount Points

It is optional, but common, to create special mount points in the FSMount section. The following sample demonstrates how to map the /wa/, /or/, and /id/ mount point to the C:\UserAccounts directories.

<List Name="FSMount">
...other mount points...
<List Name="ISP Mount Points--Washington">
<Var ShortName="pn-local"/>
<Var MountPoint="/wa/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
<List Name="ISP Mount Points--Oregon">
<Var ShortName="pn-local"/>
<Var MountPoint="/or/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
<List Name="ISP Mount Points--Idaho">
<Var ShortName="pn-local"/>
<Var MountPoint="/id/"/>
<Var BasePath="C:\UserAccounts"/>
</List>
...other mount points...
</List>

List: Mount Name

The list for ISP mount point.

<List Name="FSMount">
<List Name="Mount Name">
...variables that define the encoder
</List>
</List>

Registry Value

config.FSMount.Mount Name 

Example

<List Name="ISP Mount Points--Washington"> ... </List>

Var: ShortName

Short name of the ISP mount point.

Tag Syntax

<Var ShortName="Name"/>

Possible Values

Example

<Var ShortName="pn-local"/>

Var: MountPoint

Portion of the URL that indicates the type of request and therefore which file system will handle the request.

Tag Syntax

<Var MountPoint="Mount Point"/>

Possible Values

Example

<Var MountPoint="/wa/"/>

Var: BasePath

The location in which the paths should be mapped.

Tag Syntax

<Var BasePath="Path"/>

Possible Values

Example

<Var BasePath="C:\UserAccounts"/>

Account-Based Hosting

With account-based hosting, Helix Universal Server uses a combination of the URL, user list file, and the configuration file to determine where to look for users' content files.

The following steps describe how Helix Universal Server processes all requests when ISP Hosting is in use:

  1. When it receives a request for content, Helix Universal Server looks at the account name after the tilde (~).
  2. It looks through the user list for a matching account information.
  3. If your user list contains individual account names, Helix Universal Server searches these to find a match. If it doesn't find an exact match, it uses the generic account information.
  4. Once it finds a match (or the generic information), it looks at the /path/ value. The /path/ information matches the UserPath variable in the configuration file. This is not a physical path; it is used only for the next step, and serves as a way to group user account names logically.
  5. Using the /path/ information, Helix Universal Server goes to the ISPHosting list of the configuration file, where it looks within the TranslationMounts list for a matching UserPath. Once it finds a match, Helix Universal Server records the MountPoint located within the same list. This translates the logical path to a file system.
  6. Next, Helix Universal Server looks in the FSMount list for a file system whose mount point matches the MountPoint from the ISPHosting list. Once it finds the correct mount point, Helix Universal Server notes the associated BasePath.
  7. The media will be in a directory relative to BasePath.

Typically, users' content is mapped to a special ISP hosting mount point and base path. User directories are located under the base path.

Example

In the following example, an ISP in the northwest United States has divided its users by geographical location.

Example—User List File

The user list file groups the users in the WA and OR groups, and instructs Helix Universal Server to look for all other users in the ID path.

UserList [

Sample URLS:

{chris, /wa/canderson/, 0, 5},

rtsp://server.company.com/~chris/file.rm

{lee, /or/ladams/, 0, 5},

rtsp://server.company.com/~lee/file.rm

{pat, /wa/pbrown/, 0, 5},

rtsp://server.company.com/~pat/file.rm

{sandy, /or/schu/, 0, 5},

rtsp://server.company.com/~sandy/file.rm

{~*, /id/, 0, 5} rtsp://server.company.com/~username/file.rm
]

Example—ISPHosting Section

The ISPHosting section of the configuration file maps the UserPaths to mount points. In this example, each list within the TranslationMounts section maps part of each user path to its own mount point.

<List Name="ISPHosting">
<List Name="TranslationMounts">
<List Name="Washington Users">
<Var MountPoint="/wa_isp/"/>
<Var UserPath="/wa/"/>
</List>
<List Name="Oregon Users">
<Var MountPoint="/or_isp/"/>
<Var UserPath="/or/"/>
</List>
<List Name="Idaho Users">
<Var MountPoint="/id_isp/"/>
<Var UserPath="/id/"/>
</List>
</List>
<List Name="UserLists">
<Var File="c:\users\userlist1.txt"/>
</List>
</List>

Example—FSMount Section

The FSMount section of this example uses the same file system, pn-local, for each group of ISP users.

<List Name="FSMount">
...other mount points...
<List Name="ISP Content (Washington users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/wa_isp/"/>
<Var BasePath="c:\home\washington"/>
</List>
<List Name="ISP Content (Oregon users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/or_isp/"/>
<Var BasePath="c:\home\oregon"/>
</List>
<List Name="ISP Content (Idaho users)">
<Var ShortName="pn-local"/>
<Var MountPoint="/id_isp/"/>
<Var BasePath="c:\home\idaho"/>
</List>
...other mount points...
</List>

Example—User Directories

User directories are stored under directories according to the state where the accounts are based:

C:\home\washington\canderson
C:\home\washington\pbrown
C:\home\oregon\ladams
C:\home\oregon\schu
C:\home\idaho\alex
C:\home\idaho\sam
C:\home\idaho\tracy

Note: The actual directories where the users' content is stored is different from the /path/ shown in the user list file. The /path/ information is actually a method of grouping users.

Dedicated Hosting

On Helix Universal Servers dedicated to ISP hosting, the process for locating user's content files is slightly different:

  1. When it receives a request for content, Helix Universal Server looks at the directories in the URL. It uses the number of directories indicated by number in the user list file.
  2. Using the /path/ information in the user list, Helix Universal Server goes to the ISPHosting list of the configuration file, where it looks within the TranslationMounts list for a matching UserPath. Once it finds a match (it looks for the longest possible match), Helix Universal Server records the MountPoint located within the same list. This translates the logical path to a file system.
  3. Next, Helix Universal Server looks in the FSMount list for a file system whose mount point matches the MountPoint from the ISPHosting list. Once it finds the correct mount point, Helix Universal Server notes the associated BasePath.
  4. The media will be in a directory relative to BasePath.

Typically, users' content is mapped to a special ISP hosting mount point and base path. User directories are located under the base path.


RealNetworks, Inc. © 2002 RealNetworks, Inc. All rights reserved.
For more information, visit RealNetworks
Click here if the Table of Contents frame is not visible at the left side of your screen.
previous next