소개
이 문서에서는 TFTP가 컨피그레이션 파일의 서비스를 중지하여 등록 과정에서 디바이스가 필요한 파일을 수신하지 못하게 하는 방법에 대해 설명합니다.
개요
Maximum Serving Count(최대 서비스 요청 수)는 한 번에 파일을 수락하고 서비스를 제공하기 위한 최대 클라이언트 요청 수를 지정합니다. 전용 TFTP 서버에 대해 권장되는 값: 단일 프로세서 시스템의 경우 1500, 이중 프로세서 시스템의 경우 3000입니다. 더 높은 CPU 컨피그레이션의 경우 서빙 수는 최대 3500개일 수 있습니다.
문제
TFTP에서 요청한 파일이 있을 때마다 연결 개체가 만들어집니다. 5개의 활성 연결 객체가 있습니다(11.5에서 변경된 설계). 한 번에 5개의 요청을 TFTP에서 처리할 수 있으며, 후속 요청은 처리 대기열에 추가됩니다. 연결 개체 중 하나가 해제되면 그것은 6번째 요청 등을 처리합니다. 모든 연결 객체가 다 소모되면(즉, 연결 객체가 해제되지 않으면) 보류 중인 요청이 계속 쌓입니다. 카운트가 3000(또는 서비스 매개변수에 설정된 최대 서빙 카운트)에 도달하면 TFTP 디버그 로그에 표시된 대로 TFTP는 503 오류로 응답합니다. 이상적으로 이것은 몇 초 또는 몇 분 내에 해결되어야 한다. 그렇지 않은 경우 TAC에 케이스를 제출합니다.
고정 파일이 없거나 파일 크기가 0인 것과 같은 잘못된 파일 요청이 있으면 연결 개체가 해제되지 않습니다.
솔루션
영향을 받는 노드에서 TFTP 서비스를 다시 시작합니다.
필요한 로그
- Cisco CallManager(CUCM) [디버그/상세]
- TFTP [디버그/세부]
- 이벤트 뷰어 Sys/App
로그 분석
TFTP 로그:
### static file request and response ###
01975217.004 |19:33:58.685 |AppInfo | ServeFile::validateFileName File Requested .
01975217.008 |19:33:58.685 |AppInfo | ServeFile::CheckFileIsStatic is (Static) File
01975218.024 |19:33:58.686 |AppInfo | ServeStaticFile::FindAndServe File to be searched onDisk is [], onDisk = 0
01975218.026 |19:33:58.686 |AppInfo | ServeStaticFile::processFileRequest File Not Found - 404 - Failure
01975220.002 |19:33:58.686 |AppInfo | HTTPConnection::wait_FileResponse Requested file NOT FOUND or File Contents EMPTY... Sending error response
### Max serving count reached ###
00002296.000 |20:56:50.807 |AppInfo | TID[b44f0b70] TFTPEngine::getRequest0xb384bde0, server socket(8) INFO:: File Requested SEPXXXXXXXXXXXX.cnf.xml
00002299.000 |20:56:50.807 |AppInfo |TFTPEngine::isReadRequest[0xb384bde0 Y.Y.Y.Y~59499], [SEPXXXXXXXXXXXX.cnf.xml] opcode(1), Mode(octet), Serving Count(3000)*
00002300.000 |20:56:50.807 |AppInfo | TID[b44f0b70] TFTPServer::****recvMessage0x8954318 sockets:8 count(03000)****, connect(0xb384bde0), nbytes(32)
00002301.000 |20:56:50.807 |AppInfo | TID[b44f0b70] TFTPServer::recvMessage0x8954318 sockets:8 Reached max count, returning 503
FAQ
정적 파일이란 무엇입니까?
정적 파일은 /usr/local/cm/tftp에서 찾을 수 있는 모든 로드 파일이며 동적 TFTP 파일은 SEP<mac id>.cnf.xml과 같은 모든 컨피그레이션 파일입니다.
서빙카운트를 감시할 수 있는 방법이 있나요?
TFTP 로그(디버그) 외에 다른 방법으로 서비스 수를 모니터링할 수 없습니다(예: 성능 카운터 등).
서빙 카운트는 어디에서 변경할 수 있나요?
CUCM GUI에서 최대 서빙 카운트 값을 확인/변경할 수 있습니다. System(시스템) > Service Parameters(서비스 매개변수) > Service(서비스) = Cisco TFTP.