Configuring Network Resources

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Managing WebLogic SIP Server Network Resources

The following sections describe how to configure network resources for use with WebLogic SIP Server:

 


Overview of Network Configuration

The default HTTP network configuration for each WebLogic SIP Server instance is determined from the Listen Address and Listen Port setting for each server. However, WebLogic SIP Server does not support the SIP protocol over HTTP. The SIP protocol is supported over the UDP and TCP transport protocols. SIPS is also supported using the TLS transport protocol.

To enable UDP, TCP, or TLS transports, you configure one or more network channels for a WebLogic SIP Server instance. A network channel is a configurable WebLogic Server resource that defines the attributes of a specific network connection to the server instance. Basic channel attributes include:

You can assign multiple channels to a single WebLogic SIP Server instance to support multiple protocols or to utilize multiple interfaces available with multihomed server hardware. You cannot assign the same channel to multiple server instances.

When you configure a new network channel for the SIP protocol, both the UDP and TCP transport protocols are enabled on the specified port. You cannot create a SIP channel that supports only UDP transport or only TCP transport. When you configure a network channel for the SIPS protocol, the server uses the TLS transport protocol for the connection.

As you configure a new SIP Server domain, you will generally create multiple SIP channels for communication to each engine tier server in your system. Engine tier servers can communicate to data tier replicas using the configured Listen Address attributes for the replicas. Note, however, that replicas must use unique Listen Addressees in order to communicate with one another.

Note: If you configure multiple replicas in a data tier cluster, you must configure a unique Listen Address for each server (a unique DNS name or IP address). If you do not specify a unique Listen Address, the replica service binds to the default "localhost" address and multiple replicas cannot locate one another.

IPv4 and IPv6

If your operating system and hardware support IPv6, you can also configure WebLogic SIP Server to use IPv6 for network communication. IPv6 for SIP traffic is enabled by configuring a network channel with an IPv6 address. You must configure an IPv6 SIP channel on each engine tier server that will support IPv6 traffic.

Note: The Windows XP IPv6 implementation does not support dual mode sockets, and cannot be used with any available JVMs to support IPv6. Using IPv6 with a network channel throws the following exception with either the Sun or JRockit JVMs:
Note:    Address family not supported by protocol family: bind.
Note: For more information see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6230761

Note that each SIP network channel configured on an engine supports either IPv6 or IPv4 traffic. You cannot mix IPv4 and IPv6 traffic on a single channel. A single engine can be configured with both an IPv4 and IPv6 channel to support multiple, separate networks.

It is also possible for WebLogic SIP Server engine and data tier nodes to communicate on IPv4 (or IPv6) while supporting the other protocol version for external SIP traffic. To configure engine and data tier nodes on an IPv6 network, simply specify IPv6 listen addresses for each server instance.

See Creating a New SIP or SIPS Channel for information about configuring IPv4 and IPv6 network channels.

 


Configuring Load Balancer Addresses

If your system uses one or more load balancers to distribute connections to the engine tier, you must configure SIP network channels to include a load balancer address as the external listen address. When a SIP channel has an external listen address that differs from the channel's primary listen address, WebLogic SIP Server embeds the host and port number of the external address in SIP headers such as Response. In this way, subsequent communication for the call is directed to the public load balancer address, rather than the local engine tier server address (which may not be accessible to external clients).

If a network channel does not have a configured external listen address, the primary listen address is embedded into SIP headers.

Multiple Load Balancers and Multihomed Load Balancers

If your system uses two load balancers, you must define two channels on each engine tier server (one for each network connection to each load balancer) and assign the external listen address to the corresponding load balancer. When a particular network interface on the engine tier server is selected for outbound traffic, the network channel associated with that NIC's address is examined to determine the external listen address to embed in SIP headers.

If your system uses a multihomed load balancer having two public addresses, you must also define a pair of channels to configure both public addresses. If the engine tier server has only one NIC, you must define a second, logical address on the NIC to configure a dedicated channel for the second public address. In addition, you must configure your IP routing policies to define which logical address is associated with each public load balancer address.

 


Enabling DNS Support

WebLogic SIP Server supports DNS for resolving the transport, IP address and port number of a proxy required to send a SIP message. This matches the behavior described in RFC 3263. DNS may also used when routing responses in order to resolve the IP address and port number of a destination.

WARNING: Because DNS resolution is performed within the context of SIP message processing, any DNS performance problems result in increased latency performance. BEA recommends using a caching DNS server in a production environment to minimize potential performance problems.

To configure DNS support:

  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. Click Lock & Edit to obtain a configuration lock.
  3. Select the SipServer node in the left pane of the Console.
  4. Select the Configuration->General tab in the right pane.
  5. Select Enable DNS Server Lookup.
  6. Click Save to save your changes.
  7. Click Activate Changes to apply the configuration.

When you enable DNS lookup, the server can use DNS to:

For proxy discovery, WebLogic SIP Server uses DNS resolution only once per SIP transaction to determine transport, IP, and port number information. All retransmissions, ACKs, or CANCEL requests are delivered to the same address and port using the same transport. For details about how DNS resolution takes place, see RFC 3263: Session Initiation Protocol (SIP): Locating SIP Servers.

When a proxy needs to send a response message, WebLogic SIP Server uses DNS lookup to determine the IP address and/or port number of the destination, depending on the information provided in the sent-by field and via header.

 


Configuring Network Channels for SIP or SIPS

When you create a new domain using the Configuration Wizard, WebLogic SIP Server instances are configured with a default network channel supporting the SIP protocol over UDP and TCP. This default channel is configured to use Listen Port 5060, but specifies no Listen Address. Follow the instructions in Reconfiguring an Existing Channel to change the default channel's listen address or listen port settings. See Creating a New SIP or SIPS Channel for to create a new channel resource to support additional protocols or additional network interfaces.

Reconfiguring an Existing Channel

Note: You cannot change the protocol supported by an existing channel. To reconfigure an existing listen address/port combination to use a different network protocol, you must delete the existing channel and create a new channel using the instructions in Creating a New SIP or SIPS Channel.
  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. Click Lock & Edit to obtain a configuration lock.
  3. In the left pane, select the Environment->Servers tab.
  4. In the right pane, select the name of the server you want to configure.
  5. Select the Protocols->Channels tab to display the configured channels.
  6. To delete an existing channel, select it in the table and click Delete.
  7. To reconfigure an existing channel:
    1. Select the channel's name from the channel list (for example, the default sip channel).
    2. Edit the Listen Address or Listen Port fields to correspond to the address of a NIC or logical address on the associated engine tier machine.
    3. Edit the External Listen Address or External Listen Port fields to match the public address of a load balancer in the system.
    4. Edit the advanced channel attributes as necessary (see Creating a New SIP or SIPS Channel for details.)
    5. Click Save.
  8. Click Activate Changes to apply the configuration.

Creating a New SIP or SIPS Channel

To create add a new SIP or SIPS channel to the configuration of a WebLogic SIP Server instance:

  1. Log in to the Administration Console for the WebLogic SIP Server domain you want to configure.
  2. Click Lock & Edit to obtain a configuration lock.
  3. In the left pane, select the Environment->Servers tab.
  4. In the right pane, select the name of the server you want to configure.
  5. Select the Protocols->Channels tab to display the configured channels.
  6. Click New to configure a new channel.
  7. Fill in the new channel fields as follows:
    • Name: Enter an administrative name for this channel, such as "SIPS-Channel-eth0."
    • Protocol: Select either SIP to support UDP and TCP transport, or SIPS to support TLS transport. Note that a SIP channel cannot support only UDP or only TCP transport on the configured port.
  8. Click Next
  9. Fill in the new channel's addressing fields as follows:
    • Listen Address: Enter the IP address or DNS name for this channel. On a multi-homed machine, enter the exact IP address of the interface you want to configure, or a DNS name that maps to the exact IP address.
    • Listen Port: Enter the port number used to communication via this channel. The combination of Listen Address and Listen Port must be unique across all channels configured for the server. SIP channels support both UDP and TCP transport on the configured port.
    • External Listen Address and External Listen Port: Edit these fields to match the public address of a load balancer associated with this channel. When the server selects an interface or logical address to use for outbound network traffic, WebLogic SIP Server examines the channel that was configured with the same primary Listen Address; if the External Listen Address of this channel differs, the external address is embedded into SIP message headers for further call traffic. See Configuring Load Balancer Addresses.
  10. Click Next
  11. Optionally click Show to display and edit advanced channel properties, such as connection timeout values. Keep in mind the following restrictions and suggestions for advanced channel properties:
    • Outbound Enabled—This attribute cannot be unchecked, because all SIP and SIPS channels can originate network connections.
    • HTTP Enabled for This Protocol—This attribute cannot be selected for SIP and SIPS channels, because WebLogic SIP Server does not support HTTP transport SIP protocols.
    • Maximum Message Size—This attribute specifies the maximum TCP message size that the server allows on a connection from this channel. WebLogic SIP Server shuts off any connection where the messages size exceeds the configured value. The default size of 10,000,000 bytes is large. If you are concerned about preventing Denial Of Service (DOS) attacks against the server, reduce this attribute to a value that is compatible with your deployed services.
  12. Click Next.
  13. Click Activate Changes to apply the configuration.

 


Configuring Custom Timeout, MTU, and Other Properties

SIP channels can be further configured using one or more custom channel properties. The custom properties cannot be set using the Administration Console. Instead, you must use a text editor to add the properties to a single, custom-property stanza in the channel configuration portion of the config.xml file for the domain.

WebLogic SIP Server provides the following custom properties that affect the transport protocol of SIP channels:

To configure a custom property, use a text editor to modify the config.xml file directly, or use a JMX client such as WLST to add the custom property. When editing config.xml directly, ensure that you add only one custom-properties element to the end of a channel's configuration stanza. Separate multiple custom properties within the same element using semicolons (;) as shown in Listing 1-1.

Listing 1-1 Setting Custom Properties
<network-access-point>
  <name>sip</name>
  <protocol>sip</protocol>
  <listen-port>5060</listen-port>
  <public-port>5060</public-port>
  <http-enabled-for-this-protocol>false</http-enabled-for-this-protocol>
  <tunneling-enabled>false</tunneling-enabled>
  <outbound-enabled>true</outbound-enabled>
  <enabled>true</enabled>
  <two-way-ssl-enabled>false</two-way-ssl-enabled>
  <client-certificate-enforced>false</client-certificate-enforced>
  <custom-properties>EnabledProtocolVersions=ALL;Mtu=1000;SourcePorts=5060</custom-properties>
</network-access-point>

 


Configuring SIP Channels for Multi-Homed Machines

If you are configuring a server that has multiple network interfaces (a "multihomed" server), you must configure a separate network channel for each IP address used by WebLogic SIP Server. WebLogic SIP Server uses the listen address and listen port values for each channel when embedding routing information into SIP message system headers.

Note: If you do not configure a channel for a particular IP address on a multihomed machine, that IP address cannot be used when populating Via, Contact, and Record-Route headers.

 


Configuring TCP and TLS Channels for Diameter Support

WebLogic SIP Server's Diameter implementation supports the Diameter protocol over the TCP or TLS transport protocols. To enable incoming Diameter connections on a server, you configure a dedicated network channel using the protocol type "diameter" for TCP transport, or "diameters" for both TCP and TLS transport. The Diameter implementation application may automatically upgrade Diameter connections to use TLS as described in the Diameter specification (RFC 3558).

See Configuring Diameter Client Nodes and Relay Agents for more information about configuring network channels for Diameter protocol support.

 


Configuring Engine Servers to Listen on Any IP Interface (0.0.0.0 or ::)

To configure WebLogic SIP Server to listen for UDP traffic on any available IP interface, create a new SIP channel and specify 0.0.0.0 (or :: for IPv6 networks) as the listen address. Note that you must still configure at least one additional channel with an explicit IP address to use for outgoing SIP messages. (For multi-homed machines, each interface used for outgoing messages must have a configured channel.)

Note: If you configure a SIP channel without specifying the channel listen address, but you do configure a listen address for the server itself, then the SIP channel inherits the server listen address. In this case the SIP channel does not listen on IP_ANY.
Note: Using the 0.0.0.0 configuration affects only UDP traffic on Linux platforms. WebLogic SIP Server only creates TCP and HTTP listen threads corresponding to the configured hostname of the server, and localhost. If multiple addresses are mapped to the hostname, WebLogic SIP Server displays warning messages upon startup. To avoid this problem and listen on all addresses, specify the :: address, which encompasses all available addresses for both IPv6 and IPv4 for HTTP and TCP traffic as well.

 


Configuring Unique Listen Address Attributes for Data Tier Replicas

Each replica in the data tier must bind to a unique Listen Address attribute (a unique DNS name or IP address) in order to contact one another as peers. Follow these instructions for each replica to assign a unique Listen Address:

  1. Access the Administration Console for the WebLogic SIP Server domain.
  2. In the left pane, select the name of the server to configure.
  3. Select the Configuration->General tab.
  4. Enter a unique DNS name or IP address in the Listen Address field.
  5. Click Apply.

  Back to Top       Previous  Next