• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

H3C M9008S,没有将INVITE和CANCEl,发到同一个IP和端口

1小时前提问
  • 1关注
  • 1收藏,52浏览
粉丝:0人 关注:4人

问题描述:

H3C M9008S负载均衡器,没有将同一个呼叫中的INVITE和CANCEl,发到同一个IP和端口。

3 个回答
粉丝:135人 关注:9人

需启用SIP协议的负载均衡ALG(应用层网关)功能,具体解决方案如下:

 

 原因分析

SIP协议(如INVITE/CANCEL)属于有状态应用,其子会话(如媒体流、控制信令)需关联到同一后端服务器。若负载均衡未启用SIP ALG功能,可能导致:

1. 会话不关联:INVITECANCEL被识别为独立请求,分发至不同服务器。

2. 业务中断:服务器无法匹配CANCEL对应的原始会话,造成呼叫异常终止。

 

 解决方案

 1. 开启SIP ALG功能

在负载均衡器系统视图下启用SIP协议的ALG处理:

system-view

loadbalance alg sip   开启SIP ALG

作用:识别SIP报文中的Call-IDVia等头部字段,确保同一会话的请求(如INVITE/CANCEL)被绑定到相同服务器。

验证命令:display loadbalance alg 检查SIP状态为Enabled

 2. 调整负载均衡算法

若仍存在分发不一致,改用源IP哈希算法增强粘连性:

server-farm <服务器组名>

  predictor hash address source   基于源IP哈希分发

优势:同一客户端的全部请求(含INVITE/CANCEL)固定转发至同一服务器。

 3. 检查特殊端口配置

SIP使用非标准端口(非5060/5061),需添加端口映射:

port-mapping application sip port <自定义端口号>

原因:ALG默认仅处理知名端口流量,自定义端口需显式映射。

 技术依据

ALG工作机制: 

  如资料所述,ALG通过解析应用层协议(如SIPCall-ID)实现会话关联(《H3C SecPath F1000系列命令参考》)。 

端口映射必要性: 

  非知名端口场景需手动映射,否则ALG不生效(使用指导:当虚服务器端口为非知名端口时...)。


注意事项: 

 配置后需通过抓包验证INVITE/CANCELCall-ID是否一致及是否分发至同一服务器。 

若问题仍存,检查安全策略是否拦截SIP流量(如ACLASPF状态检测)。

 

通过上述配置,可确保SIP呼叫的完整事务处理在同一服务器完成,解决业务中断问题。

暂无评论

军刺 三段
粉丝:1人 关注:0人

要解决 H3C M9008S 负载均衡器未将同一 SIP 呼叫的 INVITE 和 CANCEL 请求分发到同一服务器 IP 和端口的问题,需通过配置 SIP 会话保持策略实现。以下是详细步骤和分析:
一、问题根源
SIP 协议是无状态的应用层协议,同一呼叫的 INVITE、CANCEL、ACK 等请求需转发到同一台后端服务器才能保证呼叫控制正常。若负载均衡器未配置基于 SIP 会话的保持策略,会因负载均衡算法(如轮询、加权轮询)将请求分发到不同服务器,导致呼叫异常。
二、配置步骤(H3C M9008S)
1. 启用 SIP 应用层会话保持
登录负载均衡器 Web 界面或 CLI,配置虚拟服务的应用层保持策略,基于 SIP 的Call-ID或From/To头域保持会话:
# 进入系统视图
<Device> system-view
# 创建SIP会话保持模板
[Device] slb template persist sip-session
[Device-slb-template-persist-sip-session] persist-type sip # 类型为SIP
[Device-slb-template-persist-sip-session] sip-callid # 基于Call-ID保持(推荐)
[Device-slb-template-persist-sip-session] quit

# 配置虚拟服务,关联会话保持模板
[Device] slb virtual-server vs-sip 10.0.0.10 5060 udp # 虚拟IP和端口(SIP默认5060/UDP)
[Device-slb-vs-vs-sip] persist sip-session # 关联上述SIP会话保持模板
[Device-slb-vs-vs-sip] server-pool sp-sip # 关联后端服务器池
[Device-slb-vs-vs-sip] quit
2. 配置后端服务器池(Server Pool)
确保后端 SIP 服务器已加入服务器池,并配置健康检查(如 SIP OPTIONS 探测):
# 创建服务器池
[Device] slb server-pool sp-sip
[Device-slb-server-pool-sp-sip] server 192.168.1.10 5060 # 后端SIP服务器1
[Device-slb-server-pool-sp-sip] server 192.168.1.20 5060 # 后端SIP服务器2
[Device-slb-server-pool-sp-sip] health-check enable # 启用健康检查
[Device-slb-server-pool-sp-sip] health-check type sip # 健康检查类型为SIP
[Device-slb-server-pool-sp-sip] quit
3. 验证会话保持
发起 SIP 呼叫,抓取负载均衡器的转发日志或数据包,确认同一Call-ID的 INVITE、CANCEL 请求被转发到同一后端服务器 IP 和端口。
使用命令查看会话保持表:
display slb persist session
三、关键配置说明
SIP 会话保持类型:优先选择Call-ID(SIP 呼叫的唯一标识),若需兼容旧设备也可选择From/To头域,但Call-ID更可靠。
健康检查:必须启用 SIP OPTIONS 探测,确保负载均衡器能识别后端服务器的存活状态,避免将请求分发到故障服务器。
超时时间:会话保持的超时时间需大于 SIP 呼叫的最大持续时间(如默认 3600 秒),避免会话提前过期。
四、排错步骤
检查配置一致性:确认虚拟服务、会话保持模板、服务器池的配置未遗漏或冲突。
抓包分析 SIP 头域:在负载均衡器前后端抓包,验证Call-ID是否一致,以及负载均衡器是否基于该标识分发请求。
升级固件版本:若配置正确但问题仍存在,可能是固件 BUG,需升级到 H3C 官方推荐的稳定版本(如 V7.1.070 及以上)。
通过以上配置,H3C M9008S 可确保同一 SIP 呼叫的所有请求被分发到同一后端服务器,解决 INVITE 和 CANCEL 请求分发不一致的问题。

暂无评论

zhiliao_9TRcir 知了小白
粉丝:0人 关注:4人

目前出现这个问题是我们新增的一个farm,端口用了5090,其他farm没有这个情况。我们使用的是全局变量配置。

暂无评论

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明