- ナレッジセンター
- 匠コラム
ケーブルネットワークにおけるDPI製品のCMTS連携ソリューション
- 匠コラム
- ネットワーク
- 可視化
ビジネス推進本部 第1応用技術部
コアネットワークチーム
古山 貴良
DPI(Deep Packet Inspection)製品は、2008年5月23日に一般社団法人日本インターネットプロバイダー協会により「帯域制御の運用基準に関するガイドライン」の策定がされて以来、加入者への公平性を確保するためにP2Pアプリで有名な”ファイル交換ソフト(WinnyやWinMX、Shareなど国産P2P)”の帯域制御が行われ、現在ではインターネットサービスを提供される事業者様にはかなり浸透してきていると言えます。
本コラムでは、DPI製品とケーブルネットワークのCMTSと連携するCATV事業者様向けソリューションについて、導入ステップ毎にご紹介します。
① Step1:上位への不要トラフィックを迅速に制限すべく気軽に導入へ
DPI装置で帯域制御を実施するには、トラフィック状態を把握・分析する事から始まります。もちろんDPI装置をインラインで導入することが最終的には必要となりますが、その前段階(モニター期間)として、トラフィックをミラーする等してノンインライン環境でDPI装置を通過させる事で、商用サービスへの影響を与えること無くトラフィック分析が可能です。その実現方法としては、TAPの利用やミラーポートの設定などがあります。
続いて、モニター設置期間を設定してレポーティングから傾向を把握し、特定アプリケーションに対し帯域制御を実施して、上位への不要トラフィックを削減させることができるかどうかを確認します。 アプリケーションの特定にはシグネチャーが用いられます。これによりP2Pグループ全体やBitTorrent / Perfect Darkなどのアプリ単体での識別および帯域制御が可能となります。
ここまでがStep1となり、「トラフィックの可視化と特定アプリケーションの帯域制御」が可能となります。
下図はケーブルネットワークのCMTSとDPI装置を連携させた場合の概要図です。

ケーブルユーザ :加入者を意味しております。
DPI装置(PCEF):DPI装置はモバイル環境ではPCEFとして表現されます
DPI用CollectorはDPI装置の各種統計管理を行い、DPI用Policy Serverは加入者ID管理および外部連携を行います。DPI用Policy ServerからCMTSへの連携を示す各矢印(SNMP/IPDR/PCMM)については後述します。
DPI用Policy Serverがなければ加入者ID管理はできませんが、IP単位でもトラフィックの識別は可能であるため、シンプルな構成で運用を開始する事ができます。
② Step2:加入者ID単位での制御を取り入れ、更に付加価値を加える
ここ数年ではモバイル端末が飛躍的な勢いで台数が増え利用されています。モバイル通信では、加入者IDと呼ばれる単位で利用状況を把握し一定量のトラフィックを流すと規制がかかる仕組がなされています。DPI製品群をケーブルネットワークのCMTS環境に導入する事で、このモバイル通信と同様の仕組みをソリューションとしてCATV事業者様へ提供可能です。
仕組みとしてはStep1で不要だった DPI用Policy Serverを追加導入します。
CMTS連携での加入者ID識別としては、表1 となるよう準備します。
表1. 加入者(ケーブルユーザ)のマッピングテーブルイメージ
加入者ID | CableModemのMACアドレス |
---|---|
IPアドレス | CPEのIPアドレス(CableModemに接続する端末やルータへDHCPで払い出すIP) |
DPI用Policy Serverが 図1 にあるように、CMTSから情報をやりとりすることで加入者IDとIPアドレスのテーブルを作成しこれをDPI装置に伝えます。これは「加入者マッピング」と呼ばれています。
受け取ったDPI装置側では、加入者マッピング情報をもらえることを前提として事前に加入者単位にどのような制御を実施するのかを設定しておくことでアクションにつなげることができます。ここまでがStep2 となり、「加入者マッピングによるCMTS連携」を実現させることが可能となります。
なお、CMTS連携での加入者マッピングは、様々なパターンで柔軟に対応できるようになっています。
表2. 加入者マッピングの方式
利用プロトコル | 加入者マッピングの利用情報 |
---|---|
IPDRの利用 | IPDR の CPE-TYPEのテンプレートを利用。 |
IPDRの利用更にSNMPも併用 | SNMPを利用する場合は、IPDRのSAMISテンプレートも利用し、付加価値が可能。 |
DHCP(Option82) を利用 | CMTSからDHCPサーバへのトラフィックがDPI装置を通過する場合は、DPI装置がDHCPの必要な情報を抽出しDPI 用Policy Serverへ送信し加入者テーブルを作成し加入者マッピングを実現させます。DPI装置を通過しない場合は、Release Queryを利用します※ただし、DHCPのみの場合は、付加価値利用ができないので特別な理由がなければIPDR利用が望ましいと言えます。 |
ここでは、SNMPとIPDRを利用することで、更に付加価値のある加入者マッピングが可能になりますので、フォーカスしてお伝えします。
まずはSNMPについてです。DPI用Policy ServerにはSNMPマネージャーの機能を有しており各CMTS単位にSNMPによる構成情報を取得させます。構成情報はDPI製品各社のサポート実装に依存しますので、CMTS製品各社(ArrisC4、Cisco uBR ,
CASA等)へのサポート状況を確認しておく必要があります。
差別化を想定した加入者マッピングに対してSNMPで取得するのは、インターフェース情報になります。DPI製品各社に差異はありますが利用するMIBは以下の通りです。
表3. Policy Serverで利用するMIB(加入者マッピングでの付加価値情報として利用する)
IF-MIB | ifTable, ifIndex, ifDescr, ifType, ifSpeed |
---|---|
IP-MIB | ipAddrTable |
DOCS-IF-MIB | docsIfDownChannelId, docsIfupChannelIddocsIfDownChannelWidth, docsIfDownChannelModulation |
DOCS-IF3-MIB | docsIf3DsBondingGrpStatusTableUsChSet、DsChSet |
次に IPDRを用いた加入者マッピングについてですが、その前に少しIPDRについてご紹介致します。
IPDR(Internet Protocol Detail Record)は、課金利用を目的としたプロトコルでSNMPのUDPに比べ、TCPを採用しており信頼性も考慮されています。CMTSではIPDRは各社サポートされおり、CMTSが管理しているCableModem/CPE の通信情報を容易に出力することができます。情報はIPDRのCollector装置へ収集するよう取り決められています。
DPI用Policy ServerにはCollectorとしての機能を有するもできIPDRによるCMTS連携が実現できるようになっています。
※IPDRの仕様は、TM Forumにて取り扱われております。(関連記事リンク参照)
IPDRでの情報取得は、加入者マッピングと属性情報として必要なテンプレートを用いて情報取得を行います。その際に必要となるテンプレートについて取り上げると、以下表4の通りになります。
表4. IPDRテンプレートの種類とそのフォーマット(Netone Labサンプルログ)
(※DPI製品各社により他の種類も利用)
IPDRテンプレート | テンプレートフォーマット |
---|---|
CPE-TYPE |
<ipdr:IPDR xsi:type=”CPE-TYPE”> <CmtsHostName>C4_D30</CmtsHostName> <CmtsSysUpTime>789286413</CmtsSysUpTime> <CmtsMdIfName>cable-mac 20</CmtsMdIfName> <CmtsMdIfIndex>536870933</CmtsMdIfIndex> <CmMacAddr>00-15-CF-9A-63-B5</CmMacAddr> <RecType>3</RecType> <CpeMacAddr>00-0A-E4-23-37-24</CpeMacAddr> <CpeIpv4Addr>10.100.31.46</CpeIpv4Addr> <CpeIpv6Addr>0:0:0:0:0:0:0:0</CpeIpv6Addr> <CpeFqdn></CpeFqdn> </ipdr:IPDR> |
SAMIS-TYPE-1 Docsis3.0 モデム UPStream |
<ipdr:IPDR xsi:type=”SAMIS-TYPE-1″> <CmtsHostName>C4_D30</CmtsHostName> <CmtsSysUpTime>802406795</CmtsSysUpTime> <CmtsIpv4Addr>10.44.16.100</CmtsIpv4Addr> <CmtsIpv6Addr>0:0:0:0:0:0:0:0</CmtsIpv6Addr> <CmtsMdIfName>cable-mac 20</CmtsMdIfName> <CmtsMdIfIndex>536870933</CmtsMdIfIndex> <CmMacAddr>00-15-CF-9A-63-B5</CmMacAddr> <CmIpv4Addr>10.100.30.46</CmIpv4Addr> <CmIpv6Addr>0:0:0:0:0:0:0:0</CmIpv6Addr> <CmIpv6LinkLocalAddr>0:0:0:0:0:0:0:0</CmIpv6LinkLocalAddr> <CmQosVersion>2</CmQosVersion> <CmRegStatusValue>8</CmRegStatusValue> <CmLastRegTime>2015-06-08T22:19:16Z</CmLastRegTime> <RecType>1</RecType> <RecCreationTime>2015-06-10T10:45:00Z</RecCreationTime> <ServiceFlowChSet>0104</ServiceFlowChSet> <ServiceAppId>0</ServiceAppId> <ServiceDsMulticast>false</ServiceDsMulticast> <ServiceIdentifier>2998</ServiceIdentifier> <ServiceGateId>0</ServiceGateId> <ServiceClassName></ServiceClassName> <ServiceDirection>2</ServiceDirection> <ServiceOctetsPassed>529148438</ServiceOctetsPassed> <ServicePktsPassed>8247907</ServicePktsPassed> <ServiceSlaDropPkts>0</ServiceSlaDropPkts> <ServiceSlaDelayPkts>0</ServiceSlaDelayPkts> <ServiceTimeCreated>789292231</ServiceTimeCreated> <ServiceTimeActive>131145</ServiceTimeActive> </ipdr:IPDR> |
Docsis3.0 モデム DownStream |
<ipdr:IPDR xsi:type=”SAMIS-TYPE-1″> <CmtsHostName>C4_D30</CmtsHostName> <CmtsSysUpTime>802406795</CmtsSysUpTime> <CmtsIpv4Addr>10.44.16.100</CmtsIpv4Addr> <CmtsIpv6Addr>0:0:0:0:0:0:0:0</CmtsIpv6Addr> <CmtsMdIfName>cable-mac 20</CmtsMdIfName> <CmtsMdIfIndex>536870933</CmtsMdIfIndex> <CmMacAddr>00-15-CF-9A-63-B5</CmMacAddr> <CmIpv4Addr>10.100.30.46</CmIpv4Addr> <CmIpv6Addr>0:0:0:0:0:0:0:0</CmIpv6Addr> <CmIpv6LinkLocalAddr>0:0:0:0:0:0:0:0</CmIpv6LinkLocalAddr> <CmQosVersion>2</CmQosVersion> <CmRegStatusValue>8</CmRegStatusValue> <CmLastRegTime>2015-06-08T22:19:16Z</CmLastRegTime> <RecType>1</RecType> <RecCreationTime>2015-06-10T10:45:00Z</RecCreationTime> <ServiceFlowChSet>01020304</ServiceFlowChSet> <ServiceAppId>0</ServiceAppId> <ServiceDsMulticast>false</ServiceDsMulticast> <ServiceIdentifier>2999</ServiceIdentifier> <ServiceGateId>0</ServiceGateId> <ServiceClassName></ServiceClassName> <ServiceDirection>1</ServiceDirection> <ServiceOctetsPassed>60485144770</ServiceOctetsPassed> <ServicePktsPassed>40789870</ServicePktsPassed> <ServiceSlaDropPkts>0</ServiceSlaDropPkts> <ServiceSlaDelayPkts>0</ServiceSlaDelayPkts> <ServiceTimeCreated>789292231</ServiceTimeCreated> <ServiceTimeActive>131145</ServiceTimeActive> </ipdr:IPDR> |
※SAMIS:Subscriber Accounting Management Interface Specification
IPDRを受信することで、加入者マッピングに加えられた情報として以下のように整理できます。
表5. 加入者(ケーブルユーザ)のマッピングテーブルイメージ
加入者ID | CableModemのMACアドレス |
---|---|
IPアドレス | CPEのIPアドレス |
CMTS情報 | CMTSのIPアドレス |
CMTS下りインターフェース情報 | ボンディングとインターフェース番号 |
CMTS上りインターフェース情報 | ボンディングとインターフェース番号 |
上記の場合、加入者単位に「どのCMTSのどのCMTSインターフェース」、「上り下りの各々のボンディングチャンネルとその構成位置」という属性情報を付加することを示します。
サンプルとして、実機ログから抜粋すると以下の通りに確認する事ができます。

アップストリームは2チャンネルボンディング
ダウンストリームは4チャンネルボンディング
この例ではATTRIBUTESと記載がありますが、これが「加入者属性」と呼ばれているものになります。
このように加入者マッピング情報に付加価値情報を付与する事で以下のメリットが得られます。
- CMTS単位での帯域制御および統計情報の取得を実施できる
- CMTSのインターフェース単位に存在する加入者をグループとして認識できる
- 各グループ内での加入者毎のP2Pの帯域制御の実施や公平制御の実施ができる
③ Step3:VODやゲームなど動画配信サービスにDPIソリューションを連携させる
最後(Step3)に、DPI装置を用いてケーブルネットワークのCMTSにPacketCable Multimedia(PCMM) による連携をご紹介します。通常、加入者マッピングに必要な情報は外部システムと連携して取得し、その後の制御アクションはDPI装置自身で実行します。しかし、PCMMによるCMTS連携ソリューションでは、DPI装置はアクションを施したいトラフィックを検知するトリガー装置になり、CMTS ⇔ DOCSIS(CableModem)間で特定のモデムの特定のトラフィック(ServiceFlow)にQoSアクションを動的に実行させます。ここで実行しているQoSがPCMMによるDynamicQoSになります。もちろんStep2でのDPI装置での帯域制御との併用は可能になります。
PCMM について簡潔にご紹介します。
ケーブルラボで規定されたインターフェース仕様としてPacketCableから始まりました。
ケーブルネットワークでの高速マルチメディアサービスのインターオペラビリティを提供する為に策定され、音声系に利用されています。
PCMM は、QoSが必要とされるマルチメディアアプリケーションをサポートするためのコアアーキテクチャフレームワークとして定義され、主な仕様はDOCSISとPacketCableで新たに定義されたものです。
PCMMでの規定のインターフェース要件を利用することでサードパーティのアプリケーション・サービスを可能にします。
※CMTS各社にてサポート対応を確認して利用(Arris社,Cisco社は対応)
PCMM(PacketCable Multimedia)の詳細はケーブルラボに仕様公開されております。
(関連記事リンク参照)
上記リンクにある、PCMM Refernce Architecture のシーケンスをもとに、DPI装置とのDynamicQoS連携イメージは以下図2の通りとなります。

① 加入者モデム(CableModem)の端末から動画通信のサービストラフィックを開始します。
この時、モデムからリクエストパケットが飛びDPI装置を通過し、下りの動画サービストラフィックが配信されます。
② DPI装置はサービストラフィックのDynamicQoSを実施したい通信を識別し、DPI 用Policy Serverに通知します。
③ DPI装置から通知を受けると、PCMMをベースとしたインターフェースを介して、Gateと呼ばれるポリシー概念を持つQoS情報(DynamicQoSポリシー)を作成します。
④ CMTSはCOPS通信プトロコルにてDPI Policy Serverより受け取った情報を基に、Upstreamトラフィックを優先制御するポリシーを適用して、CMTSとCaboleModem間のフローに適用します。
CATV環境では、図3のように混合分配しその先でCMTSのインターフェース単位に
加入者モデムが多数存在するようになっています。

ケーブルネットワークでは、Upstream帯域はDownstreamに比べ帯域が小さいのが一般的です。高画質の動画サービスなどを実施する場合には、加入者の同時通信に対するUpstreamトラフィックがCMTS内部での転送処理において、動画サービスでの「カクツキ」を発生しないよう、上りの管理パケットを優先制御するなどの対策が必要です。このような場合に、PCMMにて規定されているDynamicQoSを利用するのが得策となります。
DPI装置側ではDownStreamの制御を併用し不要トラフィックの抑制をすると効果的となります。
まとめ
CATV事業者様向けに、導入ステップをイメージしやすいようにCMTS連携ソリューションをご紹介しました。差別化サービスの開発に向けて参考にして頂ければと思います。本コラムでご紹介したCMTS連携ソリューションは、今後の高画質動画サービスに向けて検討の価値があり、動画配信サービスの展開を将来的に考慮した場合、DPI用Policy ServerとDPI用Collectorの仮想基板上での対応もサポートされていることから、クラウド利用を見据えた集中管理による運用削減なども期待されております。
関連記事
https://www.tmforum.org/ipdr/
https://www.cablelabs.com/specifications/PKT-SP-MM
執筆者プロフィール
古山 貴良
ネットワンシステムズ株式会社 ビジネス推進本部 第1応用技術部 コアネットワークチーム
所属
ネットワンシステムズ入社後、DPI帯域制御装置製品の担当をを10年以上に渡り従事
差別化するためにケーブルネットワーク環境や仮想化環境、モバイル環境へのソリューション提供に向けて格闘中
Webからのお問い合わせはこちらから
ナレッジセンターを検索する
カテゴリーで検索
タグで検索