Einleitung
In diesem Dokument wird beschrieben, wie das Senden von Konfigurationsdateien über TFTP gestoppt wird. Dadurch wird verhindert, dass Geräte während der Registrierung die erforderlichen Dateien empfangen.
Überblick
Die maximale Anzahl von Serveranfragen gibt die maximale Anzahl von Clientanfragen an, um Dateien gleichzeitig zu akzeptieren und bereitzustellen. Empfohlene Werte für einen dedizierten TFTP-Server: 1500 für Systeme mit einem Prozessor und 3000 für Systeme mit zwei Prozessoren. Für höhere CPU-Konfigurationen kann die Anzahl der Server bis zu 3500 betragen.
Problem
Jedes Mal, wenn eine Datei über TFTP angefordert wird, wird ein Verbindungsobjekt erstellt. Es gibt fünf aktive Verbindungsobjekte (Design geändert in 11.5). Fünf Anfragen können gleichzeitig über TFTP verarbeitet werden, und die nachfolgenden Anfragen werden in die Verarbeitungswarteschlange gestellt. Sobald eines der Verbindungsobjekte freigegeben wird. es kümmert sich um die 6. Anfrage, und so weiter. Wenn alle Verbindungsobjekte erschöpft sind (d. h. kein Verbindungsobjekt freigegeben wird), häufen sich die ausstehenden Anforderungen weiter. Sobald der Zähler 3000 erreicht hat (oder die maximale Anzahl von Servern, die unter den Service-Parametern festgelegt wurde), antwortet TFTP mit einem 503-Fehler, wie in den TFTP-Debug-Protokollen angegeben. Im Idealfall sollte dies innerhalb von Sekunden oder Minuten gelöscht werden. Falls nicht, erstellen Sie ein Ticket beim TAC.
Wenn eine ungültige Dateianforderung wie statische Datei nicht vorhanden ist oder die Dateigröße = 0 ist, werden die Verbindungsobjekte nicht freigegeben.
Lösung
Starten Sie den TFTP-Dienst auf dem betroffenen Knoten neu.
Erforderliche Protokolle
- Cisco CallManager (CUCM) [debug/detail]
- TFTP [debug/detail]
- Ereignisanzeige - Sys/App
Protokollanalyse
TFTP-Protokolle:
### 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
Häufig gestellte Fragen
Was sind statische Dateien?
Statische Dateien sind alle Dateien, die Sie unter /usr/local/cm/tftp finden können. Dynamische TFTP-Dateien sind alle Konfigurationsdateien wie SEP<mac id>.cnf.xml.
Gibt es eine Möglichkeit, die Anzahl der Server zu überwachen?
Abgesehen von TFTP-Protokollen (Debug) gibt es keine andere Möglichkeit, die Anzahl der Server zu überwachen (wie Leistungsindikatoren usw.).
Wo kann ich die Anzahl der Server ändern?
Der Wert für die maximale Serveranzahl kann über die CUCM-GUI überprüft/geändert werden: System > Service-Parameter > Service = Cisco TFTP.