소개
이 문서에서는 ePDG(Evolved Packet Data Gateway)의 ASR(Initial Attach Success Rate) 저하와 관련된 문제를 설명합니다.
개요
초기 ASR은 총 세션 설정 시도 횟수의 성공률을 나타내는 중요한 메트릭입니다.
KPI(핵심 성과 지표)의 수식에는 총 ePDG 세션 설정 시도 횟수와 총 ePDG 세션 설정 성공 횟수가 포함됩니다. 성공한 시도 횟수가 감소하면 전체 KPI가 저하됩니다.
기본 사전 검사
ePDG 기능의 경우 IPsec(Internet Protocol Security)은 IPsec 트랜잭션을 처리하는 프로세스입니다. 따라서 ePDG 케이스의 경우 문제 해결을 진행하기 전에 일부 사전 검사를 수행해야 합니다.
1. DPC 카드 상태가 이 카드에서 실행되는지ipsecmgr 확인합니다. DPC 카드는 활성 상태여야 합니다(대기 카드 제외).
show card table
2. 각 카드의 세션 수sessmgr/ipsecmgr 에서 비정상적인 트래픽 흐름 패턴이 관찰되거나 이러한 프로세스가 경고/오버 상태인지 검토하기 위해 각 등sessmgr/ipsecmgr 의 리소스 상태를 확인합니다. 예를 들어, 이 출력에서는 여기 ipsecmgr 와 같은over 상태가 표시됩니다.
[local]abc# show task resources | grep -v good Thursday January 19 19:41:15 UTC 2023 task cputime memory files sessions cpu facility inst used allc used alloc used allc used allc S status ----------------------- ----------- ------------- --------- ------------- ------ 3/0 ipsecmgr 261 0.28% 75% 383.4M 300.0M 196 1500 30 6000 - over 3/0 ipsecmgr 262 0.23% 75% 378.0M 300.0M 185 1500 28 6000 - over 3/0 ipsecmgr 263 0.46% 75% 382.7M 300.0M 197 1500 30 6000 - over 3/0 ipsecmgr 264 0.22% 75% 383.7M 300.0M 212 1500 27 6000 - over ....
다음은 불균일한 세션sessmgrs 분포를 가진 카드 4와 5에서 실행하는 예입니다.
[local]xyx# show task resources max | grep -i sess Monday February 17 21:52:38 UTC 2023 task cputime memory files sessions 4/0 sessmgr 45 12% 100% 429.9M 2.00G 129 500 4260 26000 I good 4/0 sessmgr 48 12% 100% 428.8M 2.00G 129 500 4267 26000 I good 4/0 sessmgr 49 12% 100% 428.5M 2.00G 129 500 4274 26000 I good 4/0 sessmgr 52 12% 100% 428.3M 2.00G 129 500 4258 26000 I good 5/0 sessmgr 5002 2.34% 50% 87.46M 190.0M 89 500 -- -- S good 5/0 sessmgr 2 12% 100% 458.5M 2.00G 107 500 9279 26000 I good 5/0 sessmgr 3 13% 100% 459.9M 2.00G 106 500 9281 26000 I good
3. IPsec 수준에서 삭제되는 경우 암호화 통계를 확인합니다.
show crypto managers detail ----------------- this command shows statistics per ipsec so we can check if any drops
show crypto statistics ikev2 ----------------- this command shows overall ikev2 statistics for EPDGs for different msg flows
참고: 특정 카드의 IPsec/essmgr에서 사용자 세션/트래픽을 처리할 수 없는 문제가 카드 레벨에서 발견될 수 있으며 이전에 언급한 통계에서 IPsec 레벨에서 삭제를 확인할 수 있으므로 사전 확인이 중요합니다.
필요한 로그
문제를 더 잘 해결할 수 있는 몇 가지 사항은 다음과 같습니다.
- 문제가 발생한 시점(문제가 시작된 정확한 날짜 및 시간 참조)
- 네트워크에 변경 사항이 있거나 컨피그레이션이 변경되었습니까?
- ePDG에서 ASR에 사용되는 공식
- 영향받는 원 내에 몇 개의 ePDG가 있으며 그 중 모든 ePDG 또는 하나의 특정 EPD에서 관찰되는 문제가 있다
수집할 로그는 다음과 같습니다.
- 문제 시작 시간 전, 문제 중 및 문제 후(문제가 더 이상 발생하지 않는 경우)에 노드에서 지원 세부 정보(SSD)를 표시합니다.
- 문제 발생 전(비교 연구용) 1주일 동안 Syslog를 사용하여 문제 발생 시간 및 문제 발생 후(더 이상 문제가 발생하지 않는 경우)
- 문제가 발생하기 전(비교 연구용) 1주일 동안 SNMP(Simple Network Management Protocol) 트랩으로, 문제 발생 시간 및 문제 발생 후(더 이상 문제가 발생하지 않는 경우)를 다룹니다.
- 문제 발생 1주일 전(비교 연구용) Bulkstats로, 문제 발생 시간 및 문제 발생 후(더 이상 문제가 발생하지 않는 경우)를 다룹니다.
- Monsub는 다음 옵션에 따라 수집됩니다.
monitor subscriber with options S, X, A, Y, 19, 33, 34, 35, 26, 37, 40, 50, 88, 89. Collect traces at verbosity 5 for problematic and non-problematic number.
- 30~45분 간격으로 SSD를 사용하여 거부 이유를 찾습니다.
참고: Disconnect-reason 519 ~ 533은 ePDG 세션 거부에 대한 것입니다.
- 문제가 있는 노드와 문제가 없는 노드의 구성을 비교해야 합니다.
show configuration
show configuration verbose
logging filter active facility sessmgr level <critical/error> logging filter active facility ipsec level <critical/error> logging filter active facility ikev2 level <critical/error> logging filter active facility epdg level <critical/error> logging filter active facility diameter level<critical/error> logging filter active facility egtpc level<critical/error> logging active ------------------- to enable debug logs no logging active --------------- to disable debug logs Note :: Above mentioned debug logs are taken considering debug logs at the level of critical/error but we can capture at debug level also as per need basis e.g logging filter active facility egtpc level debug
show epdg-service all counters
-> View ePDG service information and statistics
show epdg-service statistics
-> View ePDG service statistics
show epdg-service session all
-> View ePDG service session information
show egtpc statistics interface edpg-egress debug-info
-> View egtpc statistics for ePD-egress
show session [ disconnect-reasons | duration | progress | setuptime | subsystem ]
-> iew additional session statistics.
show crypto statistics ikev2
-> View IKEv2 statistics
show diameter aaa-statistics all
->View Diameter AAA server statistics.
show subscribers epdg-only [ [ all ] | [ callid call_id ]]
-> View a list of ePDG subscribers currently accessing the system.
show subscribers epdg-service service_name [ [ all ] | [ callid call_id ]]
->View a list of ePDG subscribers currently accessing the system per ePDG service.
show crypto managers summary ipsec-sa-stats
---Need to collect with some iterations to check ipsec associations stats
경고: 디버그 로그, 로깅 모니터, mon-sub 및 mon pro와 같은 로그를 수집하라는 메시지가 나타나면 항상 유지 관리 창에서 수집하고 항상 CPU의 로드를 모니터링합니다.
분석
ePDG 초기 연결 세션 성공률 공식의 예입니다.
Initial Attach Sessions Success Rate ==((totsetupsuccess / totsetupattempt )*100)
Statistics and Counters Reference - Bulkstatistics Descriptions(통계 및 카운터 참조 - Bulkstatistics 설명)에서, 공식에 사용되는 카운터를 찾아 그 의미를 확인할 수 있습니다.
epdg totsetup-attempt- Total number of epdg session setup attempts. Increments upon receiving IKE_AUTH (CFG_REQ) for ePDG session creation.
epdg totsetup-success Total number of epdg session setup success. Increments upon successful IPv4/IPv6/Dual Stack ePDG session call setup.
SSD에서 KPI dip를 초래하는 show crash list연속/높은 충돌 수가 있는지 확인하기 위한 출력을 볼 수 있습니다.
SSD에서 라이센스가 만료되지 않았는지 또는 세션 수가 제한 내에 있는지 확인하기 위해 show license infoshow resource 확인하고 출력할 수 있습니다.
******** show resources ******* Wednesday December 07 16:58:25 IST 2022 EPDG Service: In Use : 1118147 Max Used : 1450339 ( Tuesday November 29 00:06:00 IST 2022 ) Limit : 1600000 License Status : Within Acceptable Limits >>>>>
명령 출력에서 증가하show epdg-service statistics는 실패 이유를 확인할 수 있습니다.
******** show epdg-service statistics ******* Session Disconnect reason: Remote disconnect: 580994781 Admin disconnect: 168301 Idle timeout: 0 Absolute timeout: 0 Long duration timeout: 0 Session setup timeout: 169445470 No resource: 185148 Auth failure: 7634409 Flow add failure: 0 Invalid dest-context: 0 Source address violation: 42803 LMA Revocations(non-HO): 0 Duplicate Request: 19973167 Addr assign failure: 0 LTE/Other handoff: 1310701444 Miscellaneous reasons: 456928065 MIP-reg-timeout : 0 Invalid-APN : 0 ICSR Procedure : 0 Local PGW Res. Failed : 10424 Invalid QCI : 0 UE Redirected : 0 Roaming Mandatory : 0 Invalid IMEI : 3
문제가 된 흔적으로부터 거절 이유를 찾을 수 있고, 불일치가 있으면 문제가 되지 않은 흔적과 비교할 수 있다.
추적에서 얻을 수 있는 몇 가지 시나리오:
Case-1(diameter-no-subscription)의 경우 추적을 분석한 후 Diameter EAP 요청이 AAA 서버로 전송되는 것으로 관찰됩니다. 그러나 수신된 응답은 원인 코드 DIAMETER_ERROR_USER_NO_APN_SUBSCRIPTION. A의 오류를 나타내며, 그 결과 SPGW(Serving Packet Data Gateway)는 연결 해제 이유와 함께 동일한 오류를 등록합니다. diameter-no-subscription. 이 동작은 서브스크립션이 없는 사용자의 경우 정상적인 것으로 간주됩니다. 이는 프로세스 당시 AAA(authentication, authorization, and accounting) 서버에서 거부되기 때문입니다.
참고: AAA/HSS에서 APN 서브스크립션을 확인하여 테스트 번호를 확인하고, 가능한 경우 온라인 테스트를 예약합니다.
Case-2 (Session-setup-timeout)에서 추적을 분석하면 세션 설정이 연결 해제 이유와 함께 거부되는 것으로 관찰됩니다. Session-setup-timeout. 추가 조사 결과 ePDG가 SPGW에EGTP_CREATE_SESSION_REQUEST 응답을 보내고 있지만 동일한 응답을 받지 못하고 있는 것으로 밝혀졌습니다. 아무런 응답을 받지 못한 채 3번의 연속 요청이 전송되는 것을 관찰할 수 있다.
Solution : In such cases mostly need to check why SPGW is not sending any response towards EPDG because EPDG maintains this setup timer within which it needs to have the response
Case-3의 경우 특정 APN(Access Point Name)이 포함된 요청이 PGW로 전송되지만, 원인 코드와 함께 거부됩니다. EGTP_CAUSE_USER_AUTHENTICATION_FAILED.
Solution : Here the issue can be either at HSS or EPDG itself need to check the authentication parameters being exchanged between EPDG/HSS/AAA
언급된 모든 사례를 조사하기 위해서는 보다 상세한 분석을 위해 디버그 로그를 캡처해야 합니다. 이러한 로그는 3GPP 표준에 따라 검사되며, 그 결과를 바탕으로 적절한 조치 계획 또는 해결 방안을 결정할 수 있다. 구체적인 시나리오에 따라 행동 방침이 달라질 수 있다는 점에 유의해야 한다.