要約
このアプリケーションノートでは、NISTnetソフトウェアとそのインストール方法を説明します。ネットワークインタフェースカードをルータとして動作させる方法およびNISTnetに対するTDMoP製品の設定方法について示します。また、このアプリケーションノートでは、SCT内蔵または非内蔵の複数のTDMoPチップによるNISTnetの使用方法を明らかにします。
はじめに
NISTnetは、Linux®対応のネットワークエミュレーションソフトウェアであり、このソフトウェアを使ってルータとして動作するLinuxサーバは、輻輳損失、パケット並び替え、または非対称帯域幅状態などの様々なネットワーク状態をエミュレートすることができます。また、NISTnetはLinux対応のカーネルモジュールの拡張であり、Xベースのユーザインタフェースを備えています。ツールとしてNISTnetを使って、簡単なラボ設定でネットワークパフォーマンス依存/適応型アプリケーションおよび制御プロトコルに関する制御された再現可能な実験を行うことができます。IPレベルで動作させることによって、NISTnetは様々な広域ネットワーク(WAN)状態でもたらされるクリティカルな全パフォーマンス特性をエミュレートすることができます。また、NISTnetは、システムへのユーザ定義のパケットハンドラの追加もサポートしています。図1は、標準的なNISTnetの設定を図示しています。
図1. 標準的なNISTnetの設定
このアプリケーションノートは、以下の手順を示します。
- NISTnetソフトウェアのインストール
- ルータとして動作するようにネットワークインタフェースカードの設定
- TDMoP製品の設定
- NISTnetの使用方法
この情報は、表1に示されるTDM-over-Packet伝送デバイスに適用されます。
表1. NISTnetで使用するTDMoPデバイス
TDMoP Chips with Integrated SCTs | TDMoP Chips without Integrated SCTs |
DS34T108 | DS34S108 |
DS34T104 | DS34S104 |
DS34T102 | DS34S102 |
DS34T101 | DS34S101 |
ハードウェア要件
NISTnetの配布版は、Red Hat® Linuxに対応しています。このインストールに使用されるハードウェアは、Red Hat Enterprise Linux 3.0以上に対応している必要があります。NISTnetのインストール、設定、および実行を成功させるには、ハードウェアは以下の最小要件を満たしている必要があります。
- 10GBのハードディスクドライブ
- 256MBのRAM
- 2つのネットワークインタフェースカード(NIC)
NISTnetのインストール
ソフトウェア開発パッケージのほかに、Linuxカーネルソースもインストールする必要があります。NISTnetをインストールするには、ユーザは「ルート」アクセスを持つ必要があり、インストールにはLinuxカーネルへのパッチ適用が必要です。
まず、zip形式のファイルをディレクトリ(/usr/local/src/など)にダウンロードしてください。次に、このファイルを以下のコマンドで展開してください。
tar -zxvf nistnet-2.4.1.rad_patches.tar.gz
ソースは、zip形式ファイルのディレクトリ(/usr/local/src/nistnetなど)の下のNISTnetディレクトリに展開されます。
以下のコマンドをLinuxソースディレクトリで実行してください。
- ディレクトリusr/src/linux-2.4.20-8に移動し、以下を入力してください。
make mrproper - 次に、以下のコマンドを使ってカーネル設定ファイルをコピーしてください。
cp <your config file> ./.config - ディレクトリ/usr/srcに戻り、以下を入力してください。
make oldconfig
make dep - NISTnetディレクトリを以下に変更してください。
cd /usr/local/src/nistnet - 以下のコマンドを実行してください。
make clean
./configure
make
make install
設定フェーズの間は、すべての質問に「NO」と必ず返答してください。これでNISTnetがインストールされます。
ネットワークインタフェースカードの設定
2つのNICカードをルータとして設定するには、以下のステップを実行する必要があります。
- Main Menu > System Settings > Networkを順に選択して、クリックしてください。図2は、Network Configurationの画面を示しています。
図2. ルータとしてのNICカードの設定を開始すると、このNetwork Configuration (ネットワーク設定)画面が表示されます。 - NIC eth1またはeth2のいずれかを選択してください。各NICカードをそれぞれ図3および4に示されるように設定してください。Address、Subnet Mask、およびGatewayのプロンプトに表示値を追加してください。
図3. eth1 NICの設定
図4. eth2 NICの設定
TDMoPの設定
図5は、適応型クロックリカバリ回路の標準的な例を示しています。10.10.10.1/24デバイスがTDMサービスクロックをソースTDMデバイスからリカバリしているときに、この回路はNISTnetをWANエミュレータとして使用します。
図5. NISTnetをWANエミュレータとして使用する標準クロックリカバリ設定
以下は、CESoPエミュレーションによるフレームドT1におけるTDMoPマスタデバイスの標準設定です。このTDMoPマスタデバイスは、ループバックモードで動作しています。
TOP (T1) Main Menu>General Configuration 1. Source Mac address ... (0020D224D33C) 2. Source IP 1 ... (10.10.10.1) 3. Source IP 2 ... (10.10.10.1) 4. IP Mask ... (255.255.255.0) 5. Default Gateway ... (10.10.10.99) 6. Max HDLC Frame Size[1 - 1800] ... (1800) 7. ARP wrong IP (CPU) 8. Wrong IP (Discard) 9. Not Eth Type (CPU) 10. ARP my IP (CPU) 11. Not UDP type (CPU) 12. Not TDMoIP type (CPU) 13. Bundle number does not exist (Discard) 14. OAM packet (CPU) 15. Auto Negotiation (YES) 16. Rate & Duplex > (100M_FDX) 17. Default ------------------------------------------------------------- Main Menu>Interface Configuration>T1 Screen Configuration Link Number[1 - 8] ... (1) 1. Frame Type > (SF) 2. RX Config Gain Limit (SHORT Haul) 3. OOS Code type (OOS Code) 4. Data TX/RX OOS[0 - ff] ... (7E) 5. Idle Code[0 - ff] ... (7E) 6. TX/RX Signal Mark code[0 - 3] ... (F) 7. TX/RX Signal Space code[0 - 3] ... (1) 8. TX/RX OOS Signal MASK > (Space) 9. Clock Source > (LoopBack) 10. DSU / CSU (DSU) 11. DSU Mask > (0-133 feet) 12. Link Sync (62411) 13. Connect/Disconnect (Connect) 14. Recovery Clk Mode > (Auto) 15. Master's Side Clock Source > (Stratum 1) 16. Network type > (Router based) ------------------------------------------------------------- Main Menu>Bundle Configuration>CES Bundle Configuration Bundle ID[0 - 4095] ... (1) 1. Tx Bundle Destination > (Ethernet) 2. Rx Bundle Destination > (PCM) 3. Tx UDP Bundle[0 - 8191] ... (2) 4. Rx UDP Bundle[0 - 8191] ... (2) 5. Source IP addr > (IP 1) 6. Destination Main Mac addr ... (000000000000) 7. Destination IP address ... (10.10.11.1) 8. Next Hop ... (0.0.0.0) 9. Number Of VLAN Tags[0 - 2] ... (0) 10. IP Tos[0 - 255] ... (0) 11. IP TTL[0 - 255] ... (128) 12. PSN Type > (IP) 13. Far End Interface Type > (T1 D4) 14. Payload Type > (Data) 15. Switches Sanity check (Discard) 16. Clock Recovery (Disable) 17. Differential Time [Usec][1 - 512000] ... (5000) 18. Max Buffer Size [Usec][0 - 512000] ... (0) 19. Number Of Frames[1 - 1500] ... (80) 20. Reordering (YES) 21. L Bit & OOS > (OOS Mode Conditioning) 22. Redundant (Disable) 23. RTP Mode (Disable) 24. Connect/Disconnect (Connect) 25. Next Hop Type (IP) 26. Enable JB Reset > (On N Times) 27. Window Size[2 - 127] ... (10) ------------------------------------------------------------- Main Menu>Bundle Assignment 1. Link Number [1 - 8] ... (1) 2. Bundle ID[0 - 4095] ... (1) 3. TS Route Type > (Coupled) 4. Timeslot Assignment [1-24] ... (1) 5. TS width > (8 Bits)以下は、CESoPエミュレーションによるフレームドT1におけるTDMoPスレーブデバイスの標準設定です。クロックリカバリは、このTDMoPスレーブデバイスによって実行されます。
TOP (T1) Main Menu>General Configuration 1. Source Mac address ... (0020D224A346) 2. Source IP 1 ... (10.10.11.1) 3. Source IP 2 ... (10.10.11.1) 4. IP Mask ... (255.255.255.0) 5. Default Gateway ... (10.10.11.99) 6. Max HDLC Frame Size[1 - 1800] ... (1800) 7. ARP wrong IP (CPU) 8. Wrong IP (Discard) 9. Not Eth Type (CPU) 10. ARP my IP (CPU) 11. Not UDP type (CPU) 12. Not TDMoIP type (CPU) 13. Bundle number does not exist (Discard) 14. OAM packet (CPU) 15. Auto Negotiation (YES) 16. Rate & Duplex > (100M_FDX) 17. Default ------------------------------------------------------------- Main Menu>Interface Configuration>T1 Screen Configuration Link Number[1 - 8] ... (1) 1. Frame Type > (SF) 2. RX Config Gain Limit (SHORT Haul) 3. OOS Code type (OOS Code) 4. Data TX/RX OOS[0 - ff] ... (7E) 5. Idle Code[0 - ff] ... (7E) 6. TX/RX Signal Mark code[0 - 3] ... (F) 7. TX/RX Signal Space code[0 - 3] ... (1) 8. TX/RX OOS Signal MASK > (Space) 9. Clock Source > (Recovery) 10. DSU / CSU (DSU) 11. DSU Mask > (0-133 feet) 12. Link Sync (62411) 13. Connect/Disconnect (Connect) 14. Recovery Clk Mode > (Auto) 15. Master's Side Clock Source > (Stratum 1) 16. Network type > (Router based) ------------------------------------------------------------- Main Menu>Bundle Configuration>CES Bundle Configuration Bundle ID[0 - 4095] ... (1) 1. Tx Bundle Destination > (Ethernet) 2. Rx Bundle Destination > (PCM) 3. Tx UDP Bundle[0 - 8191] ... (2) 4. Rx UDP Bundle[0 - 8191] ... (2) 5. Source IP addr > (IP 1) 6. Destination Main Mac addr ... (000000000000) 7. Destination IP address ... (10.10.10.1) 8. Next Hop ... (0.0.0.0) 9. Number Of VLAN Tags[0 - 2] ... (0) 10. IP Tos[0 - 255] ... (0) 11. IP TTL[0 - 255] ... (128) 12. PSN Type > (IP) 13. Far End Interface Type > (T1 D4) 14. Payload Type > (Data) 15. Switches Sanity check (Discard) 16. Clock Recovery (Enable) 17. Differential Time [Usec][1 - 512000] ... (5000) 18. Max Buffer Size [Usec][0 - 512000] ... (0) 19. Number Of Frames[1 - 1500] ... (80) 20. Reordering (YES) 21. L Bit & OOS > (OOS Mode Conditioning) 22. Redundant (Disable) 23. RTP Mode (Disable) 24. Connect/Disconnect (Connect) 25. Next Hop Type (IP) 26. Enable JB Reset > (On N Times) 27. Window Size[2 - 127] ... (10) ------------------------------------------------------------- Main Menu>Bundle Assignment 1. Link Number [1 - 8] ... (1) 2. Bundle ID[0 - 4095] ... (1) 3. TS Route Type > (Coupled) 4. Timeslot Assignment [1-24] ... (1) 5. TS width > (8 Bits)
NISTnetの使用方法
NISTnetを動作させる前に、コンピュータの起動時に以下のコマンドを使用してください。
modprobe nistnet
このコマンドはログインスクリプトの一部にすることが可能で、ユーザは実行ファイルを作成することができます。図6は、「startnist」という名前の実行ファイルのスクリプト例を示しています。
図6. 「startnist」という名前の実行ファイルのスクリプト例
ユーザが「startnist」という名前の実行ファイルを作成すると、GUIのNISTnetコマンド行は以下になります。
startnist
GUIのNISTnetコマンド行は以下になります。
xnistnet
GUIでない場合のNISTnetコマンド行は以下になります。
cnistnet
NISTnetのGUI画面イメージは、図7に示されています。
図7. NISTnetのGUI画面イメージ
ユーザは、GUIインタフェースで、発信元アドレス、宛先アドレス、ならびに平均遅延時間(ms)、遅延変動幅(ms)、パケットドロップ率、およびパケット重複率などのネットワーク障害を挿入します。これらの値が挿入されると、ユーザは内容を更新します。更新したら、エミュレータをオンにするために[Emulator is Off]ボタンをクリックして、このボタンを[Emulator is On]に変更してください。図8は、エミュレータがオンにされた後のGUIイメージを示しています。
図8は、エミュレータがオンにされた後のNISTnetのGUI画面イメージ
結論
NISTnetによって1台のLinux PCがルータとして設定され、幅広いネットワーク状態をエミュレートすることができます。NISTnetの詳細については、以下のNISTnetのウェブサイトをご覧ください。 www-x.antd.nist.gov/nistnet/index.html
NISTnetに関する質問は、宛に行う必要があります。NISTnet WANエミュレータに関するFAQは、以下にあります(www-x.antd.nist.gov/nistnet/faq.html)。このソフトウェアは、ユーザの自己責任で使用するために「そのままで」提供されています。マキシムは、NISTnetの使用からもたらされるおそれがある結果に関して、または本ソフトウェアに含まれ、本ソフトウェアを通じて提供されるいかなる情報もしくはサービスの正確性、信頼性、もしくは内容に関して、明示的または黙示的ないかなる種類の保証も行いません。
TDMoP製品またはマキシムのテレコム製品のその他の点に関するご質問がある場合は、テレコム製品アプリケーションサポートチームにお問い合わせください。