Configure the IAS pull adapter

The IAS pull adapter is an extension to the ingest acceleration source (IAS) to support a pull model on MSL. It is packaged as part of the IAS installer. The IAS pull adapter fetches the media content from a content source and pushes it to MSL platform via IAS. The IAS pull adapter currently supports only HLS and DASH streaming formats.

If you have firewall rules that block outbound connections or prefer a pull rather than push for other reasons, you can use the IAS pull adapter.

Follow these steps to set up the IAS pull adapter to fetch media content and push it to the MSL platform.

  1. In the IAS web interface, choose Pull adapter configuration in the left panel to display the pull adapter configuration and status page. Click Add New Channel.

    A dialog box to configure the pull origin stream appears.

  2. Enter details in the new pull adapter channel dialog box as explained in the table.

Parameter

Description

Origin URL

This is the URL of DASH or HLS live stream which is served on the origin server. Both HTTP and HTTPS URLs are supported. This field is mandatory. To configure an HTTPS URL, you might have to add a root CA certificate using the Configure root CA certs button.
Origin stream should not be video on demand stream. It must be a live stream.

For example:
http://ecptesting.com.akamaized.net/hls/live/597581/pull_adapter/master.m3u8

with the query string:
http://ecptesting.com.akamaized.net/hls/live/597581/pull_adapter/master.m3u8?user=user1&name=username

Stream ID

The stream ID used to forward the stream to MSL. This is mandatory.

Stream type

Click Primary or Backup for the corresponding stream type.

IAS port

The listening IAS port. The pull adapter sends the stream to the IAS instance listening at this port. The port must be an unused port.

IAS IP

The listening IAS IP address. The pull adapter forwards the stream to the IAS instance listening at this IP address.

Auto-polling

Click Yes to enable auto-polling. If you click Yes, the pull adapter fetches the manifest and segments at the specified target duration interval in the manifest. This parameter is recommended to reduce the number of hits to the origin server. It overrides the retry interval (if set). Auto-polling is optional if retry interval is set, otherwise it's mandatory.

Retry interval

If you enable auto-polling, this field is optional; otherwise, it's mandatory. Enter a value of the interval in which the pull adapter polls and retrieves the manifest from the origin server.

Show advanced settings

Optionally, select this option to configure the connect timeout, read timeout, request timeout, and origin authentication. Refer to IAS pull adapter advanced settings for details.

  1. To start the configured origin, click the start icon under the Action column of the stream.

    The Status column changes from Not Started to Started.

Advanced settings

Configure timeout settings and authentication for the IAS pull adapter.

  1. In the New pull adapter channel dialog box, click Show advanced settings.

  2. Enter the information as explained.

    • Connect Timeout. Specify a value during which the pull adapter will timeout if the DNS resolution of origin server hostname fails and it fails to connect to the origin server. This field is optional. The default value is 5000 ms.
    • Read Timeout. Specify a value during which the pull adapter will timeout if it is unable to read the request. This field is optional. The default value is 5000 ms.
    • Request Timeout. Specify a value during which the pull adapter will timeout if your request is not complete. This field is optional. The default value is 10000 ms.
    • Origin authentication. Select Custom authentication or Akamai signature authentication, described in more detail in the Authentication options section. The pull adapter uses this authentication mechanism to make requests to the origin. This field is optional. The default value is no authentication.

Authentication options

When you pull streams from an origin using the IAS pull adapter, you can authenticate the origin using custom authentication or Akamai signature authentication. The IAS pull adapter logs an authentication error if access to origin is denied.

You can choose:

  • Custom authentication. If you select custom authentication for the origin authentication, you specify an authentication header and an authentication string.
    • Authentication header - Enter the opaque header that the IAS pull adapter includes in every GET request that is sent towards the origin for authentication. This field is mandatory.
    • Authentication string - Enter a password that the IAS pull adapter uses as the authentication header value in base64 encoding format. This field is mandatory.
  • Akamai signature authentication. If you select Akamai signature authentication for the origin authentication, you specify the data and sign headers.
    • Data header - Optionally, specify the data header that the pull adapter uses as the header name for sending basic information about the request. The default value is X-Akamai-G2O-Auth-Data.
    • Nonce - Specify a name to identify the signing key used for signature generation. This field is mandatory.
    • Secret key. - Enter a key that the pull adapter uses to sign the authentication data header. This field is mandatory.
    • Sign string - Enter the sign string that the pull adapter uses to send the signed information about the request. This field is optional. The default value is X-Akamai-G2O-Auth-Sign.

IAS pull adapter limits

Each IAS pull adapter port on Linux is capable of handling 50 Mbps bitrate. The sum of all the bitrates in the stream should be a maximum of 50 Mbps.

Similar to the IAS ports, if a single IAS pull adapter port on Linux is set up to handle more than 50 Mbps bitrate, then the IAS client displays a warning when its load exceeds 50 Mbps per port and it stops streaming if the measured bitrate exceeds 75 Mbps per port.

The machine running IAS needs a virtual memory size (Vsize) of 2 GB to support one IAS pull adapter.


Did this page help you?