cli/cls/basic.so000075500000026230147207264150007536 0ustar00ELF>` @%@8@||      $$Ptd,,QtdRtd  PPGNUXgibKβZ # @ BE|qX H  u a 8 &R"_P! rX! fP!  H  __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longoptargnl_cli_cls_parse_ematchrtnl_basic_set_ematchrtnl_tc_str2handlertnl_basic_set_targetputsexitnl_geterrornl_cli_fatal__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endbasic.soGLIBC_2.4GLIBC_2.2.5Uii ui  0  p    `      !  8! p           ( 0 8 @ H  P  X  `  h p x  HH HtH5 % @% h% h% h%z h%r h%j h%b h%Z hp%R h`%J h P%B h @%: h 0%2 h %* h H= @H= @H H= UH)HHw]H, Ht]@H H= UH)HHHH?HHu]H Ht]H@=Y u'H= UHt H= =h]0 @f.H= t&H HtUH= H]WKf.AWAVAUIATAUHSHdH%(HD$1H\$IH  HIHDD$ht_tt*euH LH0#LHfDH LH8Ax/4$LvH=t1DAHH H5FDH13몐HD$dH3%(uH[]A\A]A^A_^RGK 8pOC tN=$"t6M}(G=c\J%8LCxW!gȵKeAV;7չz uC_hA8ֈ︡N} /I3Ȇގ i~3H7͞z8f@ X"<'B+[%Ld`b5'eM4 ԉ &'0lr@4ܪA0 xɘap~{rvX87q%|# [gYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((X08o2EoHH0Txx^BP hH H cp p n` ` 4t z2 ,      0  P! P!P!d!,$cli/cls/cgroup.so000075500000016130147207264150007752 0ustar00ELF> @X@8@  `h  $$Ptd ,,QtdRtd PPGNU3cB<ߖl @ BE|qX ( u a 8 R" 1 %  ( __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longputsexitoptargnl_cli_cls_parse_ematchrtnl_cgroup_set_ematch__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endcgroup.soGLIBC_2.4GLIBC_2.2.5ii @ui J                         ( 0 8 @  H  P  X ` HH HtcH5 % @% h% h% h% h% h% h% h%z hp%r h`%j h PH= @H= D@H H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]Ho Ht]H@=y u'H=W UHt H=* =h]P @f.H= t&H HtUH= H]WKf.AUIATAUHSHdH%(HD$1H\$H A HIHDD$4t?ethuH=v1RfHQ LH0LH#뙐HD$dH3%(u H[]A\A]HHhe:helpematchcgroupUsage: nl-cls-add [...] cgroup [OPTIONS]... OPTIONS -h, --help Show this help text. -e, --ematch=EXPR Ematch expression EXAMPLE nl-cls-add --dev=eth0 --parent=q_root cgroup;,HHXXpzRx $HFJ w?;*3$"<DBED D(D@ (A ABBA  x   6 (   o ( V  8h ooovo fv h e  cgroup.so.debugg7zXZִF!t/ ]?Eh=ڊ2Ns\ٕv%wPz<ڗ\L>3RɹrwCD5e>B4˽S-)}{Y` (4C/n7y)R8K)g7{23,wVN}E 6Μ"wyU֬4&Α4o}f1oZ&% {%c3Vnm8څF{> jJS)0Һ:^ :;X%C8-"!~l <4\e7ۚ řrr')me{Mޟc 'alo@'Xg,6`ʆjE_]cV@gN@vڨٷdKVb;TZj"1z R rҭ+;;g *B_^S) H&ا?n) hܬmRu!gdƐ-R˭:wvHt:_T;4p\: 瑥IŤ|c)ķi,|^k'zXQU f᫃)"}{fG)/ (\c)ѠixA.C ~lIZun-θ7!4z{Iרv!gh~sي<Nu-M0D9I-:iYvqsqϏ\)sptc;i̳} yy!jgYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((0  V8ovv*Eo0Th^B88 h((cPPn t z2  ,       0 h   $,Pcli/qdisc/blackhole.so000075500000016040147207264150010721 0ustar00ELF>@ @8@      $$Ptd8 8 8 ,,QtdRtd HHGNUmOn^]'ד%ﶠ}  @ BE|qX  u a 8 R"     D __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longputs__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endblackhole.soGLIBC_2.4GLIBC_2.2.5ii ui    @   ` R  W            ( 0 8 @  H  HH Ht[H5 % @% h% h% h% h% h% h% hH= @H= t@H H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]H Ht]H@= u'H= UHt H= =h]` @f.H=P t&HW HtUH=: H]WKf.ATAUHSHdH%(HD$1H\$htCH l HUIHDD$_uHD$dH3%(uH[]A\ÐH=1HHhhelpblackholeUsage: nl-qdisc-add [...] blackhole [OPTIONS]... OPTIONS --help Show this help text. EXAMPLE # Drop all outgoing packets on eth1 nl-qdisc-add --dev=eth1 --parent=root blackhole;,HxpzRx $FJ w?;*3$"4DBDD D0\  AABB |  @   D   o(   h08 oooo FVfvR hW blackhole.so.debugW7zXZִF!t/ ]?Eh=ڊ2N^ ުEj pjx r-ܾqd6K^sˑ }L>w2( 6h҅|39u0Vgm' Kks㶼j\S )-P8 ˇ{ߟyIZ\CSMa}me5TU\H+=6t'94tEm䶘.1ɨN,oҿZ\b>YʡH czoc[ѤGjP JmKRT`tj.r G svFw&kdk`i*]hjD?Uݠ3[-I6O9s< edL[P.J [4EkMv#)4BmEQVe:-TYe!jI  > evdfk(ٴF/b!b\I9Q\=7RID:V6H> W_˚OVޜƨHƜ$V5Ӑ}_18G(ߖ߁$h(kkgYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((08o"Eo0T008^Bhh hc00ntD D z2P P 8 8 ,h h       ( P` `p  0cli/qdisc/fq_codel.so000075500000026340147207264150010555 0ustar00ELF> @%@8@,,      $$PtdHHH,,QtdRtd  PPGNUZknv[6d,v)D6_ @ BE|qX K :u a 8 ^R"! ! !    __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longoptargnl_cli_parse_u32rtnl_qdisc_fq_codel_set_targetrtnl_qdisc_fq_codel_set_limitputsrtnl_qdisc_fq_codel_set_flowsrtnl_qdisc_fq_codel_set_intervalrtnl_qdisc_fq_codel_set_quantum__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endfq_codel.soGLIBC_2.4GLIBC_2.2.5ii ui  p    0        % ! + ! 4 `! ; x!            ( 0 8 @ H  P  X  `  h p x HH5 HtH5B %D @%B h%: h%2 h%* h%" h% h% h%  hp% h`% h P% h @% h 0% h H= @H= $@H H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]H Ht]H@=Y u'H= UHt H= =h]0 @f.H=X t&Hg HtUH=B H]WKf.AUIATAUHSHdH%(HD$1H\$H  H"IHDD$GWHʺz7׌&c %uНk2yqF^7q Tv0]A*_LOQ#'gʪҪ_/U)/-uKO1vWP\|^ L * N?:]{Ƹ.ztgߣ \"=jhE>۳;Ѿ&-9-J#r+W8oAz%!7' H嚸+AԼF<0~SgOy5דӐ.x?!:h3ԸЙ wJ꼰E$( @ N+eή?ku坳 $X\͋PLLs =@6O)Κ< Dm9e* M<-aa>sfc`;5>I`B5vNM6\jgެ7蟨@֖Lvr[z = ̊l KxwK^$FoO0`]"g'WJyXܷ1u eYmR"?],J%Ġ(R7B=zegYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((@0hh8o::0Eopp0T^Bhh8 h c n ct  z2  8HH,xx      0   ! !!!0$cli/qdisc/bfifo.so000075500000016120147207264150010061 0ustar00ELF> @P@8@\ \  `h  $$Ptdh h h ,,QtdRtd PPGNU/K/= V  @ BE|qX ( u a 8 R" 0 $  ( __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longoptargnl_size2intrtnl_qdisc_fifo_set_limitputsnl_cli_fatal__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endbfifo.soGLIBC_2.4GLIBC_2.2.5ii >ui H                           ( 0 8 @ H  P  X ` HH HtH5 % @% h% h% h% h% h% h% h%z hp%r h`%j h PH= @H= D@H H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]Ho Ht]H@=y u'H=W UHt H=* =h]P @f.H= t&H HtUH= H]WKf.AWAVIAUATAUHSHdH%(HD$1H\$H = HIHDD$@t?ht.=uL=` I?`IxADL@H=iHD$dH3%(u)H[]A\A]A^A_DIH5^1HHhhelplimitbfifoUsage: nl-qdisc-add [...] bfifo [OPTIONS]... OPTIONS --help Show this help text. --limit=LIMIT Maximum queue length in number of bytes. EXAMPLE # Attach bfifo with a 4KB bytes limit to eth1 nl-qdisc-add --dev=eth1 --parent=root bfifo --limit=4096Unable to parse bfifo limit "%s": Invalid format.;,HpzRx $FJ w?;*3$"LD0BBE B(D0D8DP 8A0A(B BBBF     5 (   o ( T  8h oooto fv h   bfifo.so.debugK7zXZִF!t/ ]?Eh=ڊ2Ns\ٕv%wPz<ڗw!C"壻nKM|ؔx|nwY:-^ils3@βxǂT;ssi1TvrDBdY T%p<K~47k1O_4q Jcۇ3 `&ӥE_olCt(=Ԃ:Lj ՜QBHYQ4#w YrX4R&-{-K+ ɶ'HCߡHhi7փ_?_"1KzbwBߞ^w,04QT8} B5ѩpƳꖎ,:-j t1ǀjN ]x+-+ D`}eWd^a_`n ]ND]jr: Ĺ+qF#KؐIX6u")-,zC~Z l=]"sKoXjY9 [c,ƶӭjՉދ9ɫ,%1TяFJS]#rJLhLS΍q<^e03{@}M1!Y }_pO_EF[q$*#$YCWoWbQo[<]ڡWzOXN8Rc=:-Y$cEc~gYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((0  T8ott*Eo0Th^B88 h((cPPn t z2 xh h ,       0 h   $(Lcli/qdisc/pfifo.so000075500000016060147207264150010102 0ustar00ELF>@0@8@  @H  $$Ptd ,,QtdRtd PPGNU x ʃ<}+} @ BE|qX  u a 8 R" (    l __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longoptargnl_cli_parse_u32rtnl_qdisc_fifo_set_limitputs__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endpfifo.soGLIBC_2.4GLIBC_2.2.5 ii 6ui @   @   ` z                    ( 0 8 @ H  P  X HH Ht{H5 % @% h% h% h% h% h% h% h% hp% h`H=  @H= T@H  H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]H Ht]H@= u'H= UHt H=z =h] @f.H=H t&HW HtUH=2 H]WKf.AUIATAUHSHdH%(HD$1H\$H q HIHDD$Tt;ht*=uH H8L:H=IHD$dH3%(u H[]A\A]HHhhelplimitpfifoUsage: nl-qdisc-add [...] pfifo [OPTIONS]... OPTIONS --help Show this help text. --limit=LIMIT Maximum queue length in number of packets. EXAMPLE # Attach pfifo with a 32 packet limit to eth1 nl-qdisc-add --dev=eth1 --parent=root pfifo --limit=32;,XHpzRx $FJ w?;*3$"<DBED D(D@ (A ABBA P ( @   -  l   o( L  h oooTo &6FVfvz h  pfifo.so.debugܢ z7zXZִF!t/ ]?Eh=ڊ2NN SD{SL, YKedi񣡨åoaI@ݤO̪޺%#q;/@"t#oޟ#i{:x#,Quc`SIe"4,؉L_:De$UP*G(vIZfa Dg'9ВtF. 9*&z h_E1J^l;<_+%&ɞû+VH@ _jVh٭}MX:tU kb6/uIv+`0p|#%ߒE{wC߈LSw{C\5@^3 [ψNaG$2u=lKFSqkUqBBm#{1:NozyWF#N*HWJ%*p$0A5.ܸFs@Ⱥ*əRK nw _Z]([hLHcl3)膐dCH '$z" YvyPA1ʊÆ ktg}Jfw6Q1R󚡹Bv,Q]ʴ7JU2KbwUV>P#QǢsT66x{ylqR,(Ӵ\^o[Jֺ+b提Q,`f̋ʋЎn`z똀I a$VSªQDYiYugYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((0L8oTT(Eo0Th^B hcntl l z2x x @ ,       0 `` `  $(cli/qdisc/ingress.so000075500000016030147207264150010446 0ustar00ELF>@@8@     $$Ptd   ,,QtdRtd HHGNUt;!ٌX*  @ BE|qX  u a 8 R"     D __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longputs__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endingress.soGLIBC_2.4GLIBC_2.2.5ii ui    @   ` R  W            ( 0 8 @  H  HH Ht[H5 % @% h% h% h% h% h% h% hH= @H= t@H H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]H Ht]H@= u'H= UHt H= =h]` @f.H=P t&HW HtUH=: H]WKf.ATAUHSHdH%(HD$1H\$htCH l HUIHDD$_uHD$dH3%(uH[]A\ÐH=)HHhhelpingressUsage: nl-qdisc-add [...] ingress OPTIONS --help Show this help text. EXAMPLE # Attach ingress to eth1 nl-qdisc-add --dev=eth1 --parent=root ingress;,HpzRx $FJ w?;*3$"4D0BDD D0\  AABB |  @   D   o(   h08 oooo FVfvR hW ingress.so.debuggFz7zXZִF!t/ ]?Eh=ڊ2N^ j pjx r-`M29h HMsc.n兗4ả"'̜\"SI^՘(dW>;'g.yn+2+Ά<,_qM8CYkK8*hQ15]Qe]mKh_^( *| uJ:zS{gCZIn\q2QܗhѲ&Z_ӛcA`C tXUR-~e7]#t򳔌"[DQ){bR3&75t0ֵ6o!(K~6 -w’'F&Ds,ٱgYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((08o"Eo0T008^Bhh hc00ntD D z2P P   ,H H       ( P` `p  ,cli/qdisc/hfsc.so000075500000026700147207264150007724 0ustar00ELF> @&@8@LL      $$Ptd<<QtdRtd  PPGNU&/Y.5fd,6 @ BE|qX C (u a 8 VR"~P" X" P"   __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClasses__strdupstrstrstrchrstrtoulfree__stack_chk_failgetopt_longoptargrtnl_class_hfsc_set_rscrtnl_class_hfsc_set_uscrtnl_class_hfsc_set_fscputsnl_cli_fatalnl_cli_parse_u32rtnl_qdisc_hfsc_set_defclsnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endhfsc.soGLIBC_2.4GLIBC_2.2.5ii ui    @       * / ! *@! 7`! :! B! =! @!  " @8" P        ( 0 8 @ H  P  X  `  h  p x      HH HtH5 % @% h%  h% h% h% h% h% h% hp% h`% h P% h @% h 0% h % h % h% h% h% hH= HH= HH= HH= HH H= UH)HHw]HL Ht]@H H= UH)HHHH?HHu]H/ Ht]H@=y u'H= UHt H= h]P @f.H= t&H HtUH= H]WKf.AWAVAUATIUSHdH%(HD$1*HHfH5HH6xLp,LHHH LL94$AHH5 HHxLx,LhHHH LL9<$AtxHH5HHt`xHhtVH H^H9,$It=H}E,$Et$1E|$HL$dH3 %(uLH[]A\A]A^A_fDH@fHE1 DE1\lff.AWAVAAUIATE1USHHdH%(HD$81L|$H\$ H|$H  HMLDD$8=Ch=uHL HH8H|$HA@==mH HH8pH|$HA;H HH8>H|$HA fDH= HD$8dH3%(HH[]A\A]A^A_fHa HH8H|$HDEuH5i1kfH H5rH1FH H5RH1&H H52H1H H5H1Mff.AUIATAUHSHdH%(HD$1H\$H A HIHDD$t;ht*=uH$ H8LH=THD$dH3%(u H[]A\A]dHHm1:d:m2:hInvalid argumentshvhelpdefaultrtlsulhfscUsage: nl-class-add [...] hfsc [OPTIONS]... OPTIONS --help Show this help text. --ls=SC Link-sharing service curve --rt=SC Real-time service curve --sc=SC Specifiy both of the above --ul=SC Upper limit where SC := [ [ m1 bits ] d usec ] m2 bits EXAMPLE # Attach class 1:1 to hfsc qdisc 1: and use rt and ls curve nl-class-add --dev=eth1 --parent=1: --classid=1:1 hfsc --sc=m1:250,d:8,m2:100Unable to parse sc "%s": Invalid format.Usage: nl-qdisc-add [...] hfsc [OPTIONS]... OPTIONS --help Show this help text. --default=ID Default class for unclassified traffic. EXAMPLE # Create hfsc root qdisc 1: and direct unclassified traffic to class 1:10 nl-qdisc-add --dev=eth1 --parent=root --handle=1: hfsc --default=10;<8Xhx`H zRx $0FJ w?;*3$"LDBBB B(D0A8DPF 8A0A(B BBBG LpDBBE E(D0F8D@ 8A0A(B BBBJ <pBED D(D@ (A ABBA $ KP< KP @  k{   o(     oooo   & 6 F V f v   *h/*h7:B=@@Phfsc.so.debugYs7zXZִF!t/ ]?Eh=ڊ2N.gDqktg>ә}մx/i98h‹Nwo+nƷ'_+;JR6of'}x㻿8>! c5Uclk~>J?enuVO6jt9W(e3Fd,E۩᪅{|Xc$? {5gK,b)nڊ 0u8'V0*䷥g0T&\ϐ>Bռ)׫#ao&vbF鄲X3g9 r?ܮJ.v}lK-PS!,1ޞr1D)3 2+ $O J4S^+#}opO| cA4Rp˴K՝a*v6UHcnj؄4>C#}Qlݻ<,|c@u[^w >X6e;4l}_7Og(USCǨY_ۂ,Yd/KS @8#f >K K8Rzgbcjϙ@NEa/OޙיޔƌwǘtiuM8]4=!h=%]q9"H*]Dxعq G'F=?v}RF&mS2eXK+ag͜j`TUBQأ݉x^S|9e:g؇OWsoSMsA]O`/3-|Xg`L"!*S{ygYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( ((08o:Eo0T^B  h c 0n t z2<T      0   P" P"P"d"T%cli/qdisc/plug.so000075500000026260147207264150007751 0ustar00ELF> @%@8@      $$Ptd   ,,QtdRtd  PPGNUdmE֨"A# @ BE|qX  u a 8 2R"kp! ~x! rp!    __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longoptargnl_cli_parse_u32rtnl_qdisc_plug_set_limitrtnl_qdisc_plug_release_indefiniteputsrtnl_qdisc_plug_bufferrtnl_qdisc_plug_release_one__stack_chk_failnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endplug.soGLIBC_2.4GLIBC_2.2.5aii ui           * / 5 < ! H @! [ X!             ( 0 8 @ H  P  X  ` h p HH HtH5 % @% h% h% h% h% h% h% h% hp% h`%z h P%r h @%j h 0H=) @H= $@H@ H=2 UH)HHw]H| Ht]@H  H= UH)HHHH?HHu]H_ Ht]H@= u'H=G UHt H= =h] @f.H= t&H HtUH= H]WKf.AUIATAUHSHdH%(HD$1H\$H 1 HIHDD$Dt[=tx.ht>=uHH H8LN@=tQ=uLH=HD$dH3%(u1H[]A\A]fLKL;{HHhhelplimitbufferrelease-onerelease-indefiniteplugUsage: nl-qdisc-add [...] plug [OPTIONS]... OPTIONS --help Show this help text. --limit Maximum queue length in bytes. --buffer create a new buffer(plug) and queue incoming traffic into it. --release-one release traffic from previous buffer. --release-indefinite stop buffering and release all (buffered and new) packets. EXAMPLE # Attach plug qdisc with 32KB queue size to ifb0 nl-qdisc-add --dev=ifb0 --parent=root plug --limit=32768 # Plug network traffic arriving at ifb0 nl-qdisc-add --dev=ifb0 --parent=root --update plug --buffer # Unplug traffic arriving at ifb0 indefinitely nl-qdisc-add --dev=ifb0 --parent=root --update plug --release-indefinite # If operating in output buffering mode: # at time t=t0, create a new output buffer b0 to hold network output nl-qdisc-add --dev=ifb0 --parent=root --update plug --buffer # at time t=t1, take a checkpoint c0, create a new output buffer b1 nl-qdisc-add --dev=ifb0 --parent=root --update plug --buffer # at time t=t1+r, after c0 is committed, release b0 nl-qdisc-add --dev=ifb0 --parent=root --update plug --release-one # at time t=t2, take a checkpoint c1, create a new output buffer b2 nl-qdisc-add --dev=ifb0 --parent=root --update plug --buffer # at time t=t2+r, after c1 is committed, release b1 nl-qdisc-add --dev=ifb0 --parent=root --update plug --release-one;, HpzRx $FJ w?;*3$"<DBED D(D@ (A ABBJ H    GWa    oP(    P o ooo  V f v  * h/ 5 < H [ plug.so.debug7zXZִF!t/ ]?Eh=ڊ2Nx1ۇ [IZ9D~z;LLZ)Te!&`M~[ Ֆؔd3[^a[`U+&2O"0ݶpXџ wll,1Lrud81zerI3Z((EeՄ`I`phK!L[I7ڎZM>1y]V|dw2]zE_*RI,q)(SV+e,+vfi! 78|”Uˇ[jOiJc ǫ U1M-x!ژ":gYZ.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink.gnu_debugdata $o8( (((0PP8o.Eo  0TPP^B  h c@ @ n  t  z2( (   ,PP      0 x p! p!p!!$$cli/qdisc/htb.so000075500000027030147207264150007553 0ustar00ELF> @'@8@      $$Ptd44QtdRtd  PPGNU+n O2n8-  @ BE|qX @ k ,u=  a 8 ~QR"" " "  @  __gmon_start___init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_Jv_RegisterClassesgetopt_longputsoptargnl_size2intrtnl_htb_set_cbufferrtnl_htb_set_ceilnl_cli_parse_u32rtnl_htb_set_priortnl_htb_set_rbufferrtnl_htb_set_quantumrtnl_htb_set_ratenl_cli_fatal__stack_chk_failrtnl_htb_set_defclsrtnl_htb_set_rate2quantumnl_cli_tc_registernl_cli_tc_unregisterlibpthread.so.0libm.so.6libc.so.6_edata__bss_start_endhtb.soGLIBC_2.4GLIBC_2.2.5ii ui      @     % *! .@! %`! 6! ;! C! H! N" M@" TX"  " T" @          ( 0 8 @ H  P  X  `  h p x      HH HtH5 % @% h% h% h% h% h%z h%r h%j hp%b h`%Z h P%R h @%J h 0%B h %: h %2 h%* h%" h% hH= HH= HH= HH=y HH H= UH)HHw]H Ht]@H H= UH)HHHH?HHu]H Ht]H@=i u'H= UHt H=z h]@ @f.H=H t&HW HtUH=2 H]WKf.AWAVAUIATAUHSHdH%(HD$1H\$@H I H"IHDD$t/=J=? huH=HHD$dH3%(H[]A\A]A^A_D=|k=hL=I I?HIDL=DL= I?HIDLB DH H8Lf.L= I?QHIDL DL= I?!HIDLDL=a I?HIDLZUDIH5&1IH5n1IH513IH5f1mCIH51MSAUIATAUHSHdH%(HD$1H\$H Q HIHDD$Dt=tX=t1huH=UHD$dH3%(uNH[]A\A]DH H8LzfH H8LWZHHhhvhelpr2qdefaultratequantumceilpriocbursthtbUsage: nl-class-add [...] htb [OPTIONS]... OPTIONS --help Show this help text. --rate=RATE Rate limit. --ceil=RATE Rate limit while borrowing (default: equal to --rate). --prio=PRIO Priority, lower is served first (default: 0). --quantum=SIZE Amount of bytes to serve at once (default: rate/r2q). --burst=SIZE Max charge size of rate burst buffer (default: auto). --cburst=SIZE Max charge size of ceil rate burst buffer (default: auto) EXAMPLE # Attach class 1:1 to htb qdisc 1: and rate limit it to 20mbit nl-class-add --dev=eth1 --parent=1: --classid=1:1 htb --rate=20mbitUnable to parse htb rate "%s": Invalid format.Unable to parse htb ceil rate "%s": Invalid format.Unable to parse quantum "%s": Invalid format.Unable to parse burst "%s": Invalid format.Unable to parse cburst "%s": Invalid format.Usage: nl-qdisc-add [...] htb [OPTIONS]... OPTIONS --help Show this help text. --r2q=DIV Rate to quantum divisor (default: 10) --default=ID Default class for unclassified traffic. EXAMPLE # Create htb root qdisc 1: and direct unclassified traffic to class 1:10 nl-qdisc-add --dev=eth1 --parent=root --handle=1: htb --default=10;4P (8xzRx $0FJ w?;*3$"LD}BBB E(D0D8DP 8A0A(B BBBF <BED D(D@q (A ABBF  KP KP @   @   o(    8X oooo v   & 6 F V f v %h*.%h6;CHNMT T@htb.so.debugTG7zXZִF!t/  ]?Eh=ڊ2Na oBW'G(O\9n 8U zDIBuqCBQxw1bSx ՝epTO5?G 4Zku_“(h3ѯpŔh^άDչ1?dQAj$8uFبT0WN3PQAQ!'_Z:]G~⫁la8T?-aw?P[۴2Uqg(> νjU|$?*7LG&v):d+;{uQ{-~e\8LBikUW^ N| Name Translation Table # # This file can be used to assign names to classids for easier reference # in all libnl tools. # # Format: # # qdisc definition # # class deifnition # # class definition referencing an # existing qdisc definition. # # Example: # 1: top # top -> 1:0 # top:1 interactive # interactive -> 1:1 # top:2 www # www -> 1:2 # top:3 bulk # bulk -> 1:3 # 2:1 test_class # test_class -> 2:1 # # Illegal Example: # 30:1 classD # classD:2 invalidClass # classD refers to a class, not a qdisc # ############################################################################### # # Reserved default classids 0:0 none ffff:ffff root ffff:fff1 ingress # # List your classid definitions here: # ############################################################################### # List of auto-generated classids # # DO NOT ADD CLASSID DEFINITIONS BELOW THIS LINE # # pktloc000064400000002774147221040430005772 0ustar00# # Location definitions for packet matching # # name alignment offset mask shift ip.version u8 net+0 0xF0 4 ip.hdrlen u8 net+0 0x0F ip.diffserv u8 net+1 ip.length u16 net+2 ip.id u16 net+4 ip.flag.res u8 net+6 0xff 7 ip.df u8 net+6 0x40 6 ip.mf u8 net+6 0x20 5 ip.offset u16 net+6 0x1FFF ip.ttl u8 net+8 ip.proto u8 net+9 ip.chksum u16 net+10 ip.src u32 net+12 ip.dst u32 net+16 # if ip.ihl > 5 ip.opts u32 net+20 # # IP version 6 # # name alignment offset mask shift ip6.version u8 net+0 0xF0 4 ip6.tc u16 net+0 0xFF0 4 ip6.flowlabel u32 net+0 0xFFFFF ip6.length u16 net+4 ip6.nexthdr u8 net+6 ip6.hoplimit u8 net+7 ip6.src 16 net+8 ip6.dst 16 net+24 # # Transmission Control Protocol (TCP) # # name alignment offset mask shift tcp.sport u16 tcp+0 tcp.dport u16 tcp+2 tcp.seq u32 tcp+4 tcp.ack u32 tcp+8 # Data offset (4 bits) tcp.off u8 tcp+12 0xF0 4 # Reserved [0 0 0] (3 bits) tcp.reserved u8 tcp+12 0x04 1 # ECN [N C E] (3 bits) tcp.ecn u16 tcp+12 0x01C00 6 # Individual TCP flags (0|1) (6 bits in total) tcp.flag.urg u8 tcp+13 0x20 5 tcp.flag.ack u8 tcp+13 0x10 4 tcp.flag.psh u8 tcp+13 0x08 3 tcp.flag.rst u8 tcp+13 0x04 2 tcp.flag.syn u8 tcp+13 0x02 1 tcp.flag.fin u8 tcp+13 0x01 tcp.win u16 tcp+14 tcp.csum u16 tcp+16 tcp.urg u16 tcp+18 tcp.opts u32 tcp+20 # # User Datagram Protocol (UDP) # # name alignment offset mask shift udp.sport u16 tcp+0 udp.dport u16 tcp+2 udp.length u16 tcp+4 udp.csum u16 tcp+6