リスト型インタレストによるCCNルータ負荷削減
栗原 淳,横田 健治,植田 一暁,田上 敦士
株式会社KDDI研究所
ICN研究会 キックオフワークショップ2015/04/07
栗原 淳 (KDDI研究所) List interest 2015/04/07 1 / 28
1 研究背景
2 提案手法 その 1/2:Label Array for CCNLF
3 提案手法 その 2/2:List Interest
4 提案手法の評価
5 まとめ
栗原 淳 (KDDI研究所) List interest 2015/04/07 2 / 28
研究背景: Content-centric networking (CCN)!"#$%$&#
'("&)*$%
+%(,)'$%
'-'.$
/01
'("#$"#2(34$'#
/01
/01
501
506701
/01
/06
/08
/925927:2'("#$"#2"-*$
• コンテンツは複数のcontent objectで構成.個々のcontent objectはユニークなname (content name/チャンク番号) を保持.
• content object 1つに対し interest (要求パケット) 1つを発行.• 各ルータのキャッシュを利用し効率的なコンテンツ配信を実現.
栗原 淳 (KDDI研究所) List interest 2015/04/07 3 / 28
研究背景:CCN ルータの基本Content store (CS) : content objectのキャッシュPending interest table (PIT) : 未処理interestのスタックForwarding information base (FIB) : name prefixと出力I/Fの対応表
CS PIT FIB
CS
PIT
interest
content
object
content
object
forward
forward cache
discard content
object
add incoming
interface
drop or
NACK
!"#$%&'()* +,%&'()*
" "
"
"
- -
-
-
" -lookup hit lookup miss
栗原 淳 (KDDI研究所) List interest 2015/04/07 4 / 28
研究背景:CCN label forwarding (CCNLF) in CCN 1.0
CCN 1.0 : CCN の最新プロトコル [Sol14]CCNLF : CCN 1.0におけるパケットの高速転送方法 [Mos14]
CCNLFでは,各パケットは,interest label (IL), forwarding label (FL)の2種類のラベルをヘッダに持つ• IL ⇒ interest そのもののハッシュ値• FL ⇒ 前ホップのFIBで最長一致したprefixのハッシュ値.
栗原 淳 (KDDI研究所) List interest 2015/04/07 5 / 28
iFL : ルータへの入力パケットのFLeFL : ルータのFIBと最長一致検索して得られたprefixのFL
!"#$%&%'$(
!"# $%&'
(#)$%&%*%+')
%&%*%+
,"#$%&%*'-)(#$%&%*%+'
$,"#-)(#'!"#$%&./'())$0(1*+,'
./
"(2'!"#)$%&')&-./012()3)
456734,5!6!"#&89:/012())
"(2
;6$%)&%*+,-./0/12-!34-
,"#)$%&%*'
"#$%&'-)34,5!67)%&
"#$%&%*'-)34,5!67%&%*
56#$%#$-617%8$-
/0/1/9-
,"# $%&%*'
(#)$%&%*%+'
栗原 淳 (KDDI研究所) List interest 2015/04/07 6 / 28
より詳細なCCNLFの転送ルールは…
CSPIT
FIB
CS
PIT
IL
content object,
with IL and iFL (as FL)
forward interest
with IL and eFL
(as FL)
forward content object with
IL and iFL(as FL) cache content object
with IL and eFL
discard content
object
add incoming
interface
drop or
NACK
!"#$%&'()* +,%&'()*
" "
"
"
- -
-
-"-
lookup hit
lookup miss
FL (as iFL)
determine eFL
from interest name
and FIB info.
eFL
IL
FL (as eFL)output (IL, eFL, iFL)
PIT/CSは,(eFL, IL)の完全一致(exact-match)で検索
栗原 淳 (KDDI研究所) List interest 2015/04/07 7 / 28
研究背景: Motivations of this research
巨大なコンテンツ=大量のcontent objectの取得時には,大量のinterestの発行が必要.
⇓
大量のinterestに対して,ルータのCS/PITの検索負荷が膨大になる可能性
加えて,CCNLF に対応したFIB/PIT/CSの構造や検索手法は未定義・未提案
栗原 淳 (KDDI研究所) List interest 2015/04/07 8 / 28
研究背景: Aim of this research
目的CCN 1.0 + CCNLF において,ルータ内検索を通常時よりも大幅に軽減可能とする
• 提案手法 その 1/2: Label array⇒ CCNLF に対応したFIB/PIT/CS 検索テーブルと検索アルゴリズム
• 提案手法 その 2/2: List interest⇒ 共通の情報を持つ複数interestを1つに集約したinterest
interestを集約したlist interestにlabel arrayを用いることで,集約しないinterestの場合と比べて大幅なルータ内検索負荷の軽減が可能
栗原 淳 (KDDI研究所) List interest 2015/04/07 9 / 28
1 研究背景
2 提案手法 その 1/2:Label Array for CCNLF
3 提案手法 その 2/2:List Interest
4 提案手法の評価
5 まとめ
栗原 淳 (KDDI研究所) List interest 2015/04/07 10 / 28
提案手法 その 1/2: Label array1つのFL tableと複数のsubtableから成る2層構造
FL (/xxx) FL (/xxx/yyy)
FL next FLs
FL (/xxx/yyy) null
FL table
IL (/xxx/a.jpg/1) CS
IL pointer
IL (/xxx/a.jpg/2) PIT
subtable for FL (/xxx)
IL (/xxx/yyy/c.mp3/1) PIT
IL pointer
IL (/xxx/yyy/c.mp3/2) PIT
subtable for FL (/xxx/yyy)
!"#$%&'()*# $*+,-.&'()*#
/xxx
prefix
/xxx/yyy
pointer
• FL table: FL (ハッシュ値) をキーとして持つハッシュテーブル,最長一致prefixのFL (eFL) の導出に利用
• subtable: IL (ハッシュ値) をキーとして持つハッシュテーブル,FLtableの各エントリからリンク,PIT/CSエントリへリンク
受信interestに対しFL tableとsubtableを使った2ステージの検索を行う栗原 淳 (KDDI研究所) List interest 2015/04/07 11 / 28
提案手法 その 1/2:第1ステージ ̶ FL table の検索 ̶
受信したinterestの iFL に対して,1 FL table を iFL で検索,さらに長いprefixのFLのエントリがないかをチェック
2 最長一致 prefix の FL (eFL) を導出3 eFL のエントリからリンクされる subtable の処理に遷移nameが および iFL ( ) のinterestを受信した時
FL (/xxx) FL (/xxx/yyy)
FL next FLs
FL (/xxx/yyy) null
FL table
/xxx
prefix
/xxx/yyy
pointer
to subtable
!"#
!$#
!%#&'() !*+++*,,,#
栗原 淳 (KDDI研究所) List interest 2015/04/07 12 / 28
提案手法 その 1/2:第2ステージ ̶ Subtable の検索 ̶
1 FL tableの検索処理結果で求められたeFLに紐づく subtable を固定2 subtable を受信interestの IL で検索⇒ content objectを返送もしくはPITエントリを更新,あるいは新規エントリ作成
eFL ( ) に対応する subtableで IL ( ) を処理
IL (/xxx/yyy/a.mpg/1) CS
IL pointer
IL (/xxx/yyy/a.mpg/2) PIT
subtable for eFL (/xxx/yyy)
FL (/xxx/yyy)
FL table
/xxx/yyy
!"#
!$#
!"
!"#$%#$&"'(%!$#$%
栗原 淳 (KDDI研究所) List interest 2015/04/07 13 / 28
提案手法 その 1/2: Label array まとめ
• FL table: FLのハッシュテーブル• Subtables: FL tableの各エントリに紐付いたILのハッシュテーブル• 受信interestに対して,FL table の検索の後,subtable の検索を実行(2ステージ検索)
栗原 淳 (KDDI研究所) List interest 2015/04/07 14 / 28
1 研究背景
2 提案手法 その 1/2:Label Array for CCNLF
3 提案手法 その 2/2:List Interest
4 提案手法の評価
5 まとめ
栗原 淳 (KDDI研究所) List interest 2015/04/07 15 / 28
提案手法 その 2/2: List interests
提案手法 その 2/2: List interest のモチベーションチャンク番号以外は同一のnameのinterestが連続してやって来るとき,その処理で利用する subtable は常に共通⇒ FL tableの検索を1回だけにしてsubtableだけで処理したい
List interest:• 同一のprefixを持つ複数 interest のILをパッキングしたコンテナ• 通常のinterestと同じ構造 (FL, IL等も保持)
栗原 淳 (KDDI研究所) List interest 2015/04/07 16 / 28
具体例
!"#$%$&#&'
()))(*+,-.(/
()))(*+,-.(0
()))(*+,-.(1
()))(*+,-.(2
!3&!"#'
!" 4()))(*+,-.(/5
!" 4()))(*+,-.(05
!"#4()))(*+,-.(15
!" 4()))(*+,-.(25
$%-%$67)'
$%%%$&'()*
&'()*"+,-#+.-/0/,-1
$%%%$&'()*$23/0-4
5.+26/74
0&.89(
• パッキングされるIL等は,list interestのoptional headerに格納• List interestそのもののname prefixは共通prefixと同一• name postfixはランダムに設定
栗原 淳 (KDDI研究所) List interest 2015/04/07 17 / 28
提案手法 その 2/2: Label arrayによるlist interestの処理1 List interestのFLを使ってFL tableを検索2 得られたsubtableを固定して,パッキングされたILを全て検索
!"#$%&'(
)*&$%&'( +,-#(!" ./0001.2,33,4#$,#%''#5"1
!"./0001
.61
5"./000/%7389/61
.:1#;<=>?@AB5"CDEFGHIJ
5"./000/%7389/K15"./000/%7389/L1
複数のILの処理において,FL tableの検索回数を1回のみにしてしまう栗原 淳 (KDDI研究所) List interest 2015/04/07 18 / 28
提案手法 その 2/2: List interest まとめ
• List interest: 同一prefixを持つ複数interestを,ILとしてパッキングしたコンテナ
• Label arrayを用いて,複数ILに対する最長一致prefixの検索回数を1回のみにする事が可能
栗原 淳 (KDDI研究所) List interest 2015/04/07 19 / 28
1 研究背景
2 提案手法 その 1/2:Label Array for CCNLF
3 提案手法 その 2/2:List Interest
4 提案手法の評価
5 まとめ
栗原 淳 (KDDI研究所) List interest 2015/04/07 20 / 28
提案手法の評価
L個のinterestを• L個の独立のinterestとして受信• 1つのlist interestにパッキングされたものを受信
した際の,label arrayを用いたルータ内検索の処理負荷を比較評価
L個のinterestは,チャンク番号のみが異なるものと仮定.⇒ 同一のsubtableにエントリされるものと仮定.
栗原 淳 (KDDI研究所) List interest 2015/04/07 21 / 28
提案手法の評価:L個独立のinterestの処理負荷 CIndividual
CSearchFL: FL tableの検索負荷CSearchSub(Sub): subtable Subの検索負荷
L個独立のinterestの処理負荷は,
CIndividual ≃ L (CSearchFL +CSearchSub(Sub))
おおまかに FL tableの検索負荷とsubtable Subの検索負荷の単純なL倍
※メモリのリードライト処理負荷などは無視できるものとした
栗原 淳 (KDDI研究所) List interest 2015/04/07 22 / 28
提案手法の評価:L個のinterestをパッキングしたlist interestの処理負荷 CList
L個のinterestをパッキングしたlist interestの処理負荷は,
CList ≃ CSearchFL + (L + 1)CSearchSub(Sub)
おおまかに FL tableの検索1回分と,subtable Subの検索L + 1回分の和.
L + 1の理由:List interestそのもののILも同じsubtableで検索するため.
※メモリのリードライト処理負荷などは無視できるものとした
栗原 淳 (KDDI研究所) List interest 2015/04/07 23 / 28
提案手法の評価: Lに対する処理負荷の比 CList/CIndividual
仮定: 3.08CSearchSub(∗) = CSearchFL¹
00.20.40.60.8
11.21.4
10 20 30
Rat
ioof
the
com
plex
ityC
List/C
Indi
vidu
al
List size L
Lに対する処理負荷の比 CList/CIndividual
⇒ Lに対してCList/CIndividualは反比例⇒ この例では L > 1 であれば大幅な処理負荷の軽減が可能¹3.08は,文献[SNO13]において最長一致prefixを求めるためのFIBのハッシュテーブル検索
回数の平均最小値栗原 淳 (KDDI研究所) List interest 2015/04/07 24 / 28
1 研究背景
2 提案手法 その 1/2:Label Array for CCNLF
3 提案手法 その 2/2:List Interest
4 提案手法の評価
5 まとめ
栗原 淳 (KDDI研究所) List interest 2015/04/07 25 / 28
まとめ
• CCNLFに適用可能なFIB/CS/PIT検索テーブル label array を提案• 共通のprefixを持つ複数interestのILをパッキングした list interest を提案
• list interestをlabel arrayを用いて処理することで,別個に処理する通常のinterestの場合よりも,大幅に検索処理負荷が軽減できることを明示
栗原 淳 (KDDI研究所) List interest 2015/04/07 26 / 28
今後の課題
• label array の実装評価• list interest 用のconsumer側での輻輳制御方式の評価,最適パラメータの導出⇐ 方式自体は3月NS/IN研究会で提案済 [YKT15]
栗原 淳 (KDDI研究所) List interest 2015/04/07 27 / 28
参考文献
[Mos14] M. Mosko, “CCNx label forwarding,” Palo Alto Research Center, Inc., 2014. [Online]. Available:http://www.ccnx.org/pubs/ccnx-mosko-labelforwarding-01.txt
[SNO13] W. So, A. Narayanan, and D. Oran, “Named data networking on a router: fast and DoS-resistant forwarding with hash tables,” inProc. IEEE/ACM ANCS 2013, San Jose, CA, USA, Oct. 2013, pp. 215‒225.
[Sol14] I. Solis, “CCN 1.0 (tutorial),” in ACM ICN 2014, Paris, France, Sep. 2014.[YKT15] K. Yokota, J. Kurihara, and A. Tagami, “A study of TCP-like congestion control using interest aggregation in content-centric
networking,” IEICE Tech. Rep, vol. IEICE-114, no. 477, pp. 173‒178, Mar. 2015, ref. # IEICE-NS2014-207.
栗原 淳 (KDDI研究所) List interest 2015/04/07 28 / 28