多宿主主管
SIP 可以支持通过多个接口并利用 JSR 289 的多宿主主机功能来传递出站 SIP 请求。
在多宿主主机环境中,SIP 容器能够选择特定出战接口以传递消息。SIP 容器可以接受 SIP 代理提供的出站接口的列表,并向任何 SIP 应用程序公开此列表。此功能适用于需要更紧密地控制出局请求流的应用程序。
可以使用以下两种方法来选择发送请求时要使用的出站接口,如 JSR 289 规范的 14.2 这一节中所定义那样:
- setOutboundInterface(java.net.InetAddress address)
- setOutboundInterface(java.net.InetSocketAddress address)
SIP 应用程序可以从 ServletContext 属性“javax.servlet.sip.outboundInterfaces”获得它可以用于发送出站请求的可用 SIP URI 的列表,可使用静态字符串 javax.servlet.sip.SipServlet.OUTBOUND_INTERFACES 来定义此属性。
在发送任何出站请求之前,应用程序必须设置代理上的接口、ProxyBranch 或者 SipSession 对象。将在出站接口的属性中传递回接口。然后,SIP 容器将通知代理要在其中发送出站请求的接口。非请求消息的传递受其他方法(例如,头)的控制。例如,响应消息始终流经请求所到达的同一接口。
修改请求的出站路由可能会影响插入到出局 SIP 请求的下列所有 SIP 头以及对话框中的后续响应:
- Via 头
- Contact 头
- Record-Route 和 Route 头
- Path 头
SIP 代理的三个定制属性指定缺省链名,此链名定义要用于出站请求的相应接口。请参阅有关配置多宿主主管的信息。
只有在分布式环境中才支持具有多宿主主机的 SIP,必须在 WebSphere® SIP 代理中配置这类 SIP。独立 SIP 容器不支持此功能。