Type of Service

提供: VoIP-Info.jp
2010年4月15日 (木) 20:03時点におけるVm-user (トーク | 投稿記録)による版 (213.144.6.5 (会話) による編集を MR G による版へと差し戻しました。)
移動先: 案内検索

asterisk-1.4.23.1のソースに添付されているip-tos.txtを意訳し、日本独自(ひかり電話関連)の情報を加えたものになります。


TOS(トス Type of Service)について

Asteriskは、様々なプロトコルの内容に応じて、パケットの扱いに差をつけることができます。
トラフィックの負荷が高い時でも、IPパケット中のTOSフィールドを設定することにより、
音声用のパケットを優先して送信することができます。

SIP

sip.conf中には3つのパラメータがあり、これらの値がTOSフィールドを制御しています。

tos_sip

tos_sipパラメータは、SIPのシグナリング(発着呼)パケットを制御しています。

tos_audio

tos_audioパラメータは、音声(RTP)パケットを制御しています。

tos_video

tos_videoパラメータは、RTPビデオパケットを制御しています。

IAX2

iax.confに記述する"tos"パラメータは、IAXパケット(音声パケット、発着呼全て)の優先順位を決めるパラメータとなります。
IAXパケットの中には、発着呼制御パケットと音声パケットが同一のUDPトラフィックとして流れているため、
それぞれを別個に扱う事ができないからです。

IAXy

iaxprov.confには、IAXy用の"tos"パラメータがあります。
このパラメータも、前述のiax.conf用の"tos"パラメータと同様、IAXy機器一個全体(IAXyとやりとりするパケット全体)に効果が及びます。
ただし、IAXy機材別に違うToS値を設定することが出来ます。

設定可能な値

tosパラメータとしてnumeric型(数値)を指定します。
下記の値を設定することが出来ます。

  • CS0 ~ CS7
  • AF11 AF12 AF13
  • AF21 AF22 AF23
  • AF31 AF32 AF33
  • AF41 AF42 AF43
  • EF(Expedited Forwarding)

推奨設定

設定
ファイル
パラメータ 推奨値
sip.conf tos_sip cs3
sip.conf tos_audio ef
sip.conf tos_video af41
iax.conf tos ef
iaxprov.conf tos ef

ひかり電話

ひかり電話にレジストする場合は、sip.conf中にtos_audio=80を記述しておく必要がありますが、
通話品質に改善が見られない場合はtos_audio=cs4とすることで、通話音質が改善されることがあります。

非推奨設定

推奨されませんが、下記のような設定も可能です。

  • lowdelay
  • throughput
  • reliability
  • mincost
  • none

これらの値はRFC 791および RFC 1349にて規定されている値ですが、
IPパケットの優先順位を決める値としては時代遅れとなっており、
今後のAsteriskのバージョンでは削除されるでしょう。

Asteriskとネットワークについて

Asteriskサーバーで設定したTOSパラメータを最大限に活かすには、ルーターやスイッチ等でも確実にToSやoSを扱えるようにするべきでしょう。
Cisco製ネットワーク機器の設定については、QoS Solution Reference Network Design Guideを参考にしてください。
YAMAHAルーターの場合はTOSベースQoSページが参考になります。

参考資料

RFC 2474
IPv4,IPv6でのDSフィールドの定義
Differentiated Services Field Codepoints
IANAが定めたDSCP値に関する文書

ひかり電話関連

音質について
Asterisk端末と一般電話での会話で、Asteriskからの音声がガラガラ声になる場合の対処
ひかり電話+RT57i(UZOの不定記より)
YAMAHA RT57iがひかり電話で使えないという先日の記事にコメントを頂いたので、確認してみることにした。