LYNC - SUBSCRIBE请求的SIP“413 - 请求实体太大”错误

时间:2012-10-17 11:10:25

标签: sip lync lync-2010 lync-server-2010

我目前正在尝试联合两个Lync域,中间有一个自定义SIP代理。问题是Lync服务器将在通过代理后回复“413 - 实体太大”来订阅来自其他Lync域的请求(msrtc-adrl-categorylist)。

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

这两条消息非常相像。代理添加记录路由,并在From标记的末尾附加ID。它没有把手放在身体上。

内容长度的差异是因为SIPp在正文的末尾添加了一个CRLF,Lync没有。

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

LYNC订阅 - 拒绝

Start-Line: SUBSCRIBE sip:ragg@lync2.com SIP/2.0
From: <sip:mdef@lync1.com>;epid=75bdd22553;tag=vl57cpy2rb72lu15i7awk22h0100003f1410
To: <sip:ragg@lync2.com>
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:mdef@lync1.com" name="">
    <action name="subscribe" id="104999392">
        <adhocList>    
            <resource uri="sip:ragg@lync2.com"/>
        </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 SUBSCRIBE - ACCEPTED

Start-Line: SUBSCRIBE sip:ragg@lync2.com SIP/2.0
From: <sip:mdef@lync1.com>;epid=75bdd22553;tag=1iy5s1s4humjf184oeqyeitztd0100003f1410
To: <sip:ragg@lync2.com>
CSeq: 1 SUBSCRIBE
Call-ID: 1-32615@212.166.45.124
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:mdef@lync1.com" name="">
    <action name="subscribe" id="104999648">
        <adhocList>
            <resource uri="sip:ragg@lync2.com"/>
        </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>

RESPONSE

Start-Line: SIP/2.0 413 Request entity too large
From: <sip:mdef@lync1.com>;epid=75bdd22553;tag=vl57cpy2rb72lu15i7awk22h0100003f1410
To: <sip:ragg@lync2.com>;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 个答案:

答案 0 :(得分:0)

我终于设法发现了问题。

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