LoginSignup
1
1

More than 5 years have passed since last update.

ns3におけるL2スイッチの作り方まとめ

Posted at

ns3では明示的にスイッチノードが用意されているわけではないので、ノードと CSMAの組み合わせによってスイッチを作り上げる必要がある.その方法のメモ.

方法

スイッチを作成するためにはノード同士を1対1でつなぐリンクを接続ホストの数だけ作成することになる.
具体的には以下のコードのようになる.

for (uint32_t i = 0;i<lan1.GetN();i++){
  NetDeviceContainer link = csmaHelper.Install(NodeContainer(lan.Get(i),swNode));
  swDevs.Add(link.Get(1));
}

lanNodeContainerクラスのオブジェクト、swNodePtr<Node>のオブジェクトである.

そしてswNode内にある複数のNetDeviceをブリッジできるようにするためにはBridgeHelperを利用する.

 BridgeHelper switchHelper;
 switchHelper.Install(swNode,swDevs);

これによりNode内のNetDevice間でのブリッジができるようになった.

BridgeHelperを利用する際には,インストールするノードにIPアドレスが割り振られていないのが前提条件にあるので注意

他にもAP作成時にもこのBridgeHelperは利用する.

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1