1

シナリオは、LTE ネットワークでの SIP 登録に関するものです。

  1. デバイスはネットワークにラッチし、コール ID 4EdqB3YwpQHIYGPtj9c および CSeq 番号で SIP レジスタを送信します。1
  2. ネットワークは 401 無許可で応答しました。
  3. デバイスは、呼び出し ID 4EdqB3YwpQHIYGPtj9c および CSeq 番号のnonce 値を含む登録メッセージを送信します。2 . 登録が成功します。
  4. デバイスをネットワークに再接続します。スイッチのオンとオフのように。
  5. デバイスは、同じ呼び出し ID 4EdqB3YwpQHIYGPtj9c と Cseq 番号で REGISTER メッセージを再度送信します。1 、ネットワークから500 サーバー内部エラー - 63を受信します。
  6. しばらくすると、デバイスは再び REGISTER メッセージを送信します。今回は、コール ID が 3Qp8ssj7hpKpspDn0mELU1v と cseq 番号が異なります。1. n/w から 401 応答を取得した後、REGISTER を再送信します。これも成功します。

私の質問は次のとおりです。

  1. cseq no.を再接続した後に行います。1にリセット?
  2. 再接続後、デバイスは別の呼び出し ID を使用して REGISTER メッセージを開始する必要がありますか?
  3. 500 内部サーバー エラーのエラー コード 63 は何を意味しますか?

前もって感謝します

4

1 に答える 1

0

Cseq no.を付け直してから行います。1にリセット?

新しい SIP 登録は、任意の新しい乱数で開始できます。Cseq: 1 で開始することもできます。チェックしているユーザー機器では、Cseq 1 ですべての新規登録を開始している可能性があります。

新しい登録が Sip-Registrar (つまり、IP マルチメディア サブシステムの場合は S-CSCF) で受信されたとき。Call-ID 値を使用してバインディングが作成されます。これは次の質問につながります。

再接続後、デバイスは別の呼び出し ID を使用して REGISTER メッセージを開始する必要がありますか?

登録には期限があり、しばらくすると失効します。その有効期限が切れる前に、再登録を送信する必要があります。この後続の登録要求は、Sip-Registrar でその古い登録にバインドする必要があります。そのために、同じ call-Id を維持します。(また、同じ Contact、To、From、および From タグ: バインディングに使用されるすべてのヘッダーとパラメーターは、まったく別のトピックです。ここではスキップします。) RFC3261 によると、UA は、1 回の起動サイクル中にすべての登録に同じ Call-ID を使用する必要があります。

あなたのケースに来て、古い登録と同じ呼び出し ID を持つ新しい登録要求に対して 500 内部サーバー エラーが送信される理由を推測することはできません。

古いバインディングがまだ Sip-Registrar に残っている可能性があり、デタッチ中にリソースのクリーニングが行われなかった可能性があります。この新しい登録は、同じ呼び出し ID のため、古いバインディングに関連付けられている可能性があります。(これは憶測にすぎないことに注意してください。Sip-Registrarで何が起こっているのかわかりません)

500 内部サーバー エラーのエラー コード 63 は何を意味しますか?

この 63 という数字は独自の実装です。応答として、500 以降、テキストを操作して、意味のある理由を作成するものを追加できます。

SIP-Registrar での登録の処理方法の詳細については、次の RFC リンクを参照してください。

https://www.rfc-editor.org/rfc/rfc3261#section-10.3

よろしく、KNP

于 2017-01-31T07:05:28.937 に答える