session 終止 (翻譯TR069 3.7.1.4 & 3.7.2.4)

    3.7.1.4 會話終止

  當遇到以下所有情況時,CPE必須終止會話。

  1、ACS不再有請求發給CPE,只有當最近的HTTP應答是空的CPE才能做出此結論;

  2、CPE不再有請求發給ACS且已經發給ACS空的HTTP應答同時HoldRequests爲0(HoldRequests爲0 指的是CPE不再有請求發給ACS),如果這種情況沒有遇到,CPE不再有請求或應答,它必須發出一個空的HTTP POST,這樣就會滿足該條件;

   注意:HoldRequests SOAP包頭元素是過時的,所以ACS不期望發送它。但是,ACS可能會發它,所以CPE仍然需要支持它。

  3、CPE接收來源於ACS的所有outstanding 迴應;

  4、作爲先前的請求的應答,CPE已經向ACS發送了所有outstanding迴應

   如果在等待至少30s後仍然沒有收到ACS的迴應,CPE認爲該session不成功終止。如果CPE沒有收到HTTP迴應,CPE不能在同一個會話中重傳相關HTTP請求。

   如果CPE接收到帶有錯誤代碼的SOAP包(錯誤代碼不包括8005,即retry request),CPE必須認爲該session不成功結束;

   如果CPE接收到的HTTP 應答的soap包不符合XML格式,或者SOAP的結果是無效的,或者是包括一個錯誤,或者CPE認爲是違反協議的,CPE必須認爲該session是不成功結束。

   如果CPE接收到的HTTP應答中包含錯誤狀態碼(4**或者是5**),CPE必須認爲該session是不成功結束。注意CPE允許含有401的錯誤碼(401 Unauthorized)的HTTP 相應作爲正常認證過程的一部分,當CPE隨後嘗試去認證時,如果結果的HTTP相應中包括401,CPE必須認爲該session是不成功結束。

   如果以上情況都沒有遇到,CPE必須繼續該session。

   如果CPE接收到作爲任何方法而不是Inform迴應的帶有錯誤代碼8005的SOAP包應答,CPE必須繼續改session,這種類型的錯誤迴應不能引起session不成功中斷。

   注意:在錯誤的條件下,SOAP層的錯誤會導致ACS的重定向(不太理解,稍後查證),HTTP層的錯誤會引起session不成功中斷。

   如果在一個會話中信息的傳輸會引起CPE重啓而來完成請求操作,CPE必須等到session完全結束後才能重啓。

   如果session毫無預期的中斷,CPE必須重試發起連接,CPE需要在本地定義在這種情況下重試的次數。

   3.7.2.4  會話終止

   由於CPE促使HTTP連接到ACS,只有CPE負責連接的中斷與建立。

   當遇到以下所有情況後,ACS必須認爲session結束

  1、CPE不再有請求發給ACS,只有當ACS收到CPE的空的HTTP POST且HoldRequests爲0才能做出此結論;

  2、ACS不再有請求發給CPE,求ACS發給CPE最新的HTTP相應爲空(爲空來指示CPE,ACS不再有請求);

  3、ACS已經給CPE發送了所有outstanding迴應

  4、ACS已經接收到了所有outstanding迴應;

   如果在ACS發送最後一個HTTP相應前遇到以上所有標準,那麼ACS的最一個HTTP相應應該爲空。

  如果以上標準沒有全部遇到,ACS在等待至少30後仍然沒有接收到HTTP POST, 它會認爲session結束。在這種情況下,ACS會用Connection Request嘗試重連。

  如果ACS接收到的HTTP POST的SOAP格式或者其中包含有錯誤,ACS必須用400錯誤狀態碼應答,同時必須把該session當做是不成功的終止,錯誤迴應包中必須不能包括SOAP內容,但是可以包含一些具有可讀性的對錯誤的解釋。

   如果ACS收到的請求過期,或者是ACS確定的與一些協議相悖的,或者是由ACS自由裁量的其他原因,ACS會發給CPE帶有400狀態碼的HTTP來使會話不成功中斷,這個HTTP不能包含SOAP內容,但是可以包含具有可讀性的對錯誤的解釋。

  如果ACS接收到CPE的SOAP錯誤應答,ACS必須中斷任何類似於9001(請求否認)未確認的錯誤碼,可能會選擇下面的行爲:

   1)ACS會強制終止使session中斷失敗,爲此,ACS必須用HTTP 400 應答。這個HTTP不能包含SOAP內容,但是可以包含具有可讀性的對錯誤的解釋。這樣結果會導致CPE重試會話。

   2)ACS會嘗試中斷session使它成功終止,在這種情況下CPE會retry 會話。爲此,ACS會給CPE發送更多的請求,並且會遵守以上終止會話的規則。

   3) ACS會繼續這個會話,給CPE發送額外的請求

 


   






   

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章