LYNC - SIP 订阅请求出现“413 - 请求实体太大”错误

LYNC - SIP 订阅请求出现“413 - 请求实体太大”错误

我目前正在尝试将两个 Lync 域与中间的一个自定义 SIP 代理联合起来。问题是,通过代理后,前端服务器将回复“413 - 实体太大”以订阅来自另一个 Lync 域的请求。

但是,当我使用 SIP 模拟器 SIPp 发送类似消息时,即使通过代理,订阅也会被接受。

这两个消息非常相似。代理添加了一条记录路由,并在 From 标签的末尾附加了一个 ID。它不会触及正文。

content-length 的差异是因为 SIPp 在主体末尾添加了 CRLF,而 Lync 没有。

我看不出该请求有什么问题。目标域的 Lync Edge 上记录了以下消息。

LYNC 订阅 - 被拒绝

Start-Line: SUBSCRIBE sip:[email protected] SIP/2.0
From: <sip:[email protected]>;epid=75bdd22553;tag=vl57cpy2rb72lu15i7awk22h0100003f1410
To: <sip:[email protected]>
CSeq: 1 SUBSCRIBE
Call-ID: 3ad1662aa2d84bc5a7de15f5d2ecd0be
Record-Route: <sip:smf1.testucfed.com:5061;lr>
Max-Forwards: 68
Via: SIP/2.0/TLS smf1.testucfed.com:5061;branch=z9hG4bKfspbWpOjnrsr3kELP8S9
Via: SIP/2.0/TCP 10.0.0.6:5060;branch=z9hG4bKfspbkK8M7FQrQmqN99a9
User-Agent: UCCAPI/4.0.7577.4103 OC/4.0.7577.4109 (Microsoft Lync 2010)
Event: presence
Accept: application/msrtc-event-categories+xml, application/xpidf+xml,     text/xml+msrtc.pidf, application/pidf+xml, application/rlmi+xml, multipart/related
Supported: com.microsoft.autoextend
Supported: ms-piggyback-first-notify
ms-asserted-verification-level: ms-source-verified-user=verified
Content-Type: application/msrtc-adrl-categorylist+xml
Content-Length: 464
Contact: <sip:smf1.testucfed.com:5061>
Message-Body: 
<batchSub xmlns="http://schemas.microsoft.com/2006/01/sip/batch-subscribe"                uri="sip:[email protected]" name="">
    <action name="subscribe" id="104999392">
        <adhocList>    
            <resource uri="sip:[email protected]"/>
        </adhocList>
        <categoryList xmlns="http://schemas.microsoft.com/2006/09/sip/categorylist">
            <category name="state"/>
            <category name="note"/>
            <category name="services"/>
            <category name="contactCard"/>
            <category name="calendarData"/>
        </categoryList>
    </action>
</batchSub>

SIPp 订阅 - 已接受

Start-Line: SUBSCRIBE sip:[email protected] SIP/2.0
From: <sip:[email protected]>;epid=75bdd22553;tag=1iy5s1s4humjf184oeqyeitztd0100003f1410
To: <sip:[email protected]>
CSeq: 1 SUBSCRIBE
Call-ID: [email protected]
Record-Route: <sip:smf1.testucfed.com:5061;lr>
Max-Forwards: 68
Via: SIP/2.0/TLS smf1.testucfed.com:5061;branch=z9hG4bKfspbIP0PgNyO4vZelNvG
Via: SIP/2.0/TCP 10.0.0.6:5060;branch=z9hG4bKfspbWS366kCidcbxJt9m
Event: presence
Accept: application/msrtc-event-categories+xml, application/xpidf+xml,     text/xml+msrtc.pidf, application/pidf+xml, application/rlmi+xml, multipart/related
User-Agent: UCCAPI/4.0.7577.4103 OC/4.0.7577.4109 (Microsoft Lync 2010)
Supported: com.microsoft.autoextend
Supported: ms-piggyback-first-notify
ms-asserted-verification-level: ms-source-verified-user=verified
Content-Type: application/msrtc-adrl-categorylist+xml
Content-Length: 466
Contact: <sip:smf1.testucfed.com:5061>
Message-Body: 
<batchSub xmlns="http://schemas.microsoft.com/2006/01/sip/batch-subscribe"     uri="sip:[email protected]" name="">
    <action name="subscribe" id="104999648">
        <adhocList>
            <resource uri="sip:[email protected]"/>
        </adhocList>
        <categoryList xmlns="http://schemas.microsoft.com/2006/09/sip/categorylist">
            <category name="state"/>
            <category name="note"/>
            <category name="services"/>
            <category name="contactCard"/>
            <category name="calendarData"/>
        </categoryList>
    </action>
</batchSub>

回复

Start-Line: SIP/2.0 413 Request entity too large
From: <sip:[email protected]>;epid=75bdd22553;tag=vl57cpy2rb72lu15i7awk22h0100003f1410
To: <sip:[email protected]>;tag=5F72F2201902C33E22FE6C4063EC56AD
CSeq: 1 SUBSCRIBE
Call-ID: 3ad1662aa2d84bc5a7de15f5d2ecd0be
Via: SIP/2.0/TLS     10.0.0.7:38020;branch=z9hG4bKDA21D3D8.2E84E1112774D915;branched=FALSE;ms-received-    port=38020;ms-received-cid=400
Via: SIP/2.0/TLS     smf1.testucfed.com:5061;branch=z9hG4bKfspbWpOjnrsr3kELP8S9;received=212.166.45.124;ms-received-port=51456;ms-received-cid=A3300
Via: SIP/2.0/TCP 10.0.0.6:5060;branch=z9hG4bKfspbkK8M7FQrQmqN99a9
ms-diagnostics: 4008;reason="Input data too large - One of the paramaters to the sproc     exceeds limit";source="ARIW002.lync2.com"
Server: RTC/4.0
Content-Length: 0
Message-Body: –

有人知道什么会引发此错误吗?错误消息在这里确实没有太大帮助...

如能得到帮助我将非常感激!

谢谢

答案1

我终于发现了问题所在。

Lync 服务器存储的“Dialog ID”是“Call-ID”+“From tag”+“To tag”。由于在“From tag”末尾附加了一些额外数据,“Dialog ID”的大小超出了其限制大小。

相关内容