内容

概要

背景説明

現在の設計の問題

サービスの開始時刻

機能の概要

設計変更

パフォーマンスの向上

パフォーマンス図

ログ分析:

11.5より前のHTTPでのコンフィギュレーションファイル要求

11.5のHTTP経由の設定ファイル要求

概要

このドキュメントでは、Cisco Unified Communication Manager(CUCM)バージョン11.5の一部として実装されるトリビアルファイル転送プロトコル(TFTP)スケールアーキテクチャ機能について説明します。CUCMへの最新のアップリフトです。これは、メモリ使用量と、設定ファイルとスタティックファイルの処理方法に関するTFTPサービスを改善するための純粋なエンジニアリング機能です。ビジネスロジックは同じままであり、TFTPによって提供される他のサービスには影響しません。

背景説明

この改善が必要で組み込まれた理由

現在の設計の問題

- 長い間変更されていないコンフィギュレーションファイルをTFTPがどのように処理するかを示すロジック。

- 11.5より前のTFTPサービスでは、コンフィギュレーションファイルが構築され、すべてのコンフィギュレーションファイルがメモリ内にキャッシュされます。

- サポートされる電話機の数に関してCUCMに追加される容量が増えると、TFTPサービスのメモリフットプリントが直線的に増加します。

- 将来のロードマップでは、CUCMに実装するために電話機の追加キャパシティが必要になります。

- したがって、TFTPサービスのメモリフットプリントの増加に対処することが重要になります。

サービスの開始時刻

- 20,000 ～ 40,000台の電話機が設定された中規模から大規模の導入。

- すべての電話機に影響を与える変更が行われると、TFTPはすべての影響を受ける設定ファイルを構築し、キャッシュを再構築します。

- これにより、TFTPサービスの開始にかかる時間が長くなります。

- 電話機が設定ファイルを要求すると、ビジー応答が電話機に送信されます。

機能の概要

実装された新機能は、キャッシュレス設計によって上記の2つの問題に対処し、設定ファイルをオンデマンドで構築します。要求が電話から送信されると、TFTPサービスは設定ファイルをその場で構築し、リアルタイムで電話に提供します。設定ファイルをインメモリでキャッシュすることはできず、これによりサービスの開始時刻とTFTPサービスのメモリフットプリントが削減されます。

設計変更

設計の変更は、「接続管理」と「コンフィギュレーションファイルの生成」の2つのカテゴリに分類されます。 次の表に、各カテゴリで行われた変更を示します。

接続管理

設定ファイルの生成

HTTP

TFTP

オンデマンドビルドおよび署名済み構成ファイル用のフレームワークを追加

ネットワークサービス層は、すべてのTCP接続を処理するためにSDLを使用するように設計されています

電話機がUDP経由で設定ファイルを要求する変更はありません

パフォーマンスの向上

この新機能の実装によって実現されるパフォーマンスの向上を次に示します。

- TFTPサービスのメモリフットプリントを大幅に削減

- TFTPサービスのメモリフットプリントは約600 MB

- ファイルがキャッシュされないため、サービスの開始時刻が短くなります

- サービスの開始時刻は、システムに導入されている電話機の数に依存しません

パフォーマンス図

電話数

11.5より前のバージョンでは時間がかかる

11.5バージョンの所要時間

サービス開始時刻

20,000

3分38秒

0分19秒

HTTP経由で提供されるファイル

20,000

7分24秒

4分06秒

TFTP経由で提供されるファイル

20,000

5分36秒

4分11秒

注：上記の数値は、1回のテスト実行からだけでなく、複数のテスト実行の平均です。

ログ分析:

使用デバイス：

CUCM バージョン 11.5.1.10000-6

Cisco IP Communicatorバージョン8.6.2

11.5より前のHTTPでのコンフィギュレーションファイル要求

電話機からの設定ファイルの要求

00593088.000 |21:58:11.698 |AppInfo  |   TID[da900b70] HTTPEngine::getRequest(),

[0xa0d6c90~7~10.65.64.132~54462] INFO:: socket(12), ReqTimeout[60],

Request[GET /SEP000C29ED3D88.cnf.xml HTTP/1.1

すべてのファイルは構築後にキャッシュされるため、TFTPはキャッシュされた設定ファイルを見つけます

00593097.000 |21:58:11.698 |AppInfo  |CReqContext::FindAndServe(1)[0xa0d6c90~7~10.65.64.132~54462]

,[(SEP000C29ED3D88.cnf.xml),(6779),(0xf388c2a8)] found in config cache

コンフィギュレーションファイルが電話機に正常に提供されます

00593102.000 |21:58:11.698 |AppInfo  |   HTTPEngine::sendResponse[0xa0d6c90~7~10.65.64.132~54462]

FileName[SEP000C29ED3D88.cnf.xml], Version[HTTP/1.1], Size[6779]

00593103.000 |21:58:11.698 |AppInfo  |   HTTPEngine::sendResponse[0xa0d6c90~7~10.65.64.132~54462]

INFO:: [85][HTTP/1.1 200 OK

11.5のHTTP経由の設定ファイル要求

電話機からの設定ファイルの要求

00000510.003 |21:47:40.683 |AppInfo  |   HTTPConnection::wait_SdlDataInd Printing the HTTPRequest :

msgBuffer size [148] --: GET /SEP000C29ED3D88.cnf.xml HTTP/1.1

ServeFileプロセスは、シグナル'FileRequest'をServeDynamicFileに送信します

00000511.010 |21:47:40.683 |AppInfo  |   ServeFile::wait_FileRequest Sending the

FileRequest signal to ProcessServeDynamicFile process

00000511.011 |21:47:40.683 |AppInfo  |<--ServeFile::wait_FileRequest

00000512.000 |21:47:40.683 |SdlSig   |FileRequest                            |wait

|ServeDynamicFile(1,600,25,1)     |ServeFile(1,600,24,1)            |1,600,14,4.3^*^*                         |*TraceFlagOverrode

キャッシュレス設計が実装されているため、TFTPによって設定ファイルが作成されます

00000512.027 |21:47:40.684 |AppInfo  |TFTPList::GetSupportsFMT(), Pkid[9e9cb809-df9f-4bce-8a41-37cd5f7e4d21] Name[SEP000C29ED3D88] Class[1] Product[30041] Model[30016] Protocol[0], DevProfile[0] SUPPORTs[2], Value[2]

00000512.028 |21:47:40.684 |AppInfo  |<--TFTPList::SelectByDeviceID[0,0]

00000512.029 |21:47:40.684 |AppInfo  |   ServeDynamicFile::wait_FileRequest

Build Config file for Device [SEP000C29ED3D88]

ServeDynamicFileプロセスは、シグナル'FileResponse'をServeFileに送信します

00000512.091 |21:47:40.686 |AppInfo  |<--ServeDynamicFile::wait_FileRequest

00000513.000 |21:47:40.686 |SdlSig   |FileResponse                           |wait

|ServeFile(1,600,24,1)            |ServeDynamicFile(1,600,25,1)     |1,600,14,4.3^*^*                         |*TraceFlagOverrode

00000513.002 |21:47:40.686 |AppInfo  |   ServeFile::wait_FileResponse File

Response signal received by ServeFile process

要求されたファイルが電話機に送信される

00000514.001 |21:47:40.686 |AppInfo  |-->HTTPConnection::wait_FileResponse

00000514.002 |21:47:40.686 |AppInfo  |   HTTPConnection::wait_FileResponse Requested

file FOUND... Sending file Response

00000514.003 |21:47:40.686 |AppInfo  |<--HTTPConnection::wait_FileResponse