キューイング
シリーズ化してる感がある、今さらかよ!なネタですいません。
QoS技術におけるポリシングやキューイング&スケジューリングを深く掘り下げ中。
事の発端は、
他の人が設計&設定したConfigにミスがあり、
現場での作業が中断した(いわゆるトラブル発生の)ため、
1.そもそもどのような意図で設計されたか?
2.誤った設定により、どのような挙動が発生するのか?
3.上記2.による挙動がトラブルの原因と断定できるか?
といったことを、オレが調べなくてはならない状況となったため、
深く深く掘り下げているわけです。
理由は単純で、今の担当がオレだから(笑)
あくまでも「オレに責任は無い」オーラを出しつつも、
「お前がチェックしなかったからだろ?」ライクな雰囲気が
社内で充満していたため、
「オレのスイッチ」が入っちゃいましたwってな状況です。
んで、収穫としては、
オレのQoSスキルが格段に上がっている。
ことを実感しているわけですが、
さらに、
他の人って実はあんまりQoSのこと理解してないぞ?
ってことかな。
んまぁ、QoSに限らずなんだけど、今回はQoSに限定すると、
何かといじくりまわす人は多い。
けど、
設定した内容の詳細動作説明を求められると、
明快な回答を出せる人が少ない。
っていう気がしてならないw
例えば、キューイングとスケジューリング。
そもそもキューイングとスケジューリングって、何っすか?
という問いに対して、
厳密に言葉を定義して説明できる人は少ないっぽい。
確かに各種Docを読み解いても、明確な線引きをしているモノは少ない。
例えば、Catalystであれば、
1.キューへの格納方法
→どのパケットをどのキューへ入れるか?
→内部DSCP-CoSマッピングなど
2.キューでの処理方法
→キューに入ったパケットにどんな処理をするか?
→TD,WTD,WREDなどで
3.キューからの送出方法
→処理後のパケットをどうやって出すか?
→WRR,DWRR,SRRなど
と定義した場合、
A.1&2=キューイング、3=スケジューリング
B.1=キューイング、2&3=スケジューリング
C.1&2&3=キューイング
といった具合に説明の仕方がDocによりマチマチだったりするから、
かなり解り難い or ごっちゃになり易い。
A.個人的には一番しっくりくる説明かなと。
B.1のみがキューイングっていうのは、ちょっと怪しいぞ。
C.何とも言えないっす(^^;
なぜなら、
・QoSにおけるキュー(queue)
という観点で解釈すると、ちょっぴり乱暴過ぎる感がある。
でも、
・プログラミングにおけるキュー(queue=待ち行列)
という観点で解釈すると、むしろ正しいから。
どこで何をしているか?が解ってくれば、そんなに難しくない気がする。
「気がする」というのは、オレの目で見て、手で操作して、
想定した動作の全てを確認しきれていないから。
だって、エンジニアなら、
他人の検証結果を100%信用してないわけじゃないけれど、
他人の検証結果を100%信用して良いわけでも無いからね。
生産性は悪いんだけどさ(^^;
QoS技術におけるポリシングやキューイング&スケジューリングを深く掘り下げ中。
事の発端は、
他の人が設計&設定したConfigにミスがあり、
現場での作業が中断した(いわゆるトラブル発生の)ため、
1.そもそもどのような意図で設計されたか?
2.誤った設定により、どのような挙動が発生するのか?
3.上記2.による挙動がトラブルの原因と断定できるか?
といったことを、オレが調べなくてはならない状況となったため、
深く深く掘り下げているわけです。
理由は単純で、今の担当がオレだから(笑)
あくまでも「オレに責任は無い」オーラを出しつつも、
「お前がチェックしなかったからだろ?」ライクな雰囲気が
社内で充満していたため、
「オレのスイッチ」が入っちゃいましたwってな状況です。
んで、収穫としては、
オレのQoSスキルが格段に上がっている。
ことを実感しているわけですが、
さらに、
他の人って実はあんまりQoSのこと理解してないぞ?
ってことかな。
んまぁ、QoSに限らずなんだけど、今回はQoSに限定すると、
何かといじくりまわす人は多い。
けど、
設定した内容の詳細動作説明を求められると、
明快な回答を出せる人が少ない。
っていう気がしてならないw
例えば、キューイングとスケジューリング。
そもそもキューイングとスケジューリングって、何っすか?
という問いに対して、
厳密に言葉を定義して説明できる人は少ないっぽい。
確かに各種Docを読み解いても、明確な線引きをしているモノは少ない。
例えば、Catalystであれば、
1.キューへの格納方法
→どのパケットをどのキューへ入れるか?
→内部DSCP-CoSマッピングなど
2.キューでの処理方法
→キューに入ったパケットにどんな処理をするか?
→TD,WTD,WREDなどで
3.キューからの送出方法
→処理後のパケットをどうやって出すか?
→WRR,DWRR,SRRなど
と定義した場合、
A.1&2=キューイング、3=スケジューリング
B.1=キューイング、2&3=スケジューリング
C.1&2&3=キューイング
といった具合に説明の仕方がDocによりマチマチだったりするから、
かなり解り難い or ごっちゃになり易い。
A.個人的には一番しっくりくる説明かなと。
B.1のみがキューイングっていうのは、ちょっと怪しいぞ。
C.何とも言えないっす(^^;
なぜなら、
・QoSにおけるキュー(queue)
という観点で解釈すると、ちょっぴり乱暴過ぎる感がある。
でも、
・プログラミングにおけるキュー(queue=待ち行列)
という観点で解釈すると、むしろ正しいから。
どこで何をしているか?が解ってくれば、そんなに難しくない気がする。
「気がする」というのは、オレの目で見て、手で操作して、
想定した動作の全てを確認しきれていないから。
だって、エンジニアなら、
他人の検証結果を100%信用してないわけじゃないけれど、
他人の検証結果を100%信用して良いわけでも無いからね。
生産性は悪いんだけどさ(^^;
by mdesign21
| 2009-09-26 03:14
| Diary