Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Jist swans study
Search
con_mame
May 17, 2009
Technology
0
85
Jist swans study
Jisit/SWANSの勉強会資料
con_mame
May 17, 2009
Tweet
Share
More Decks by con_mame
See All by con_mame
Amazon Aurora
con_mame
6
20k
Amazon Aurora latest update
con_mame
1
190
Amazon RDS for PostgreSQL deep dive 〜 Amazon Redshiftとの連携 〜
con_mame
3
1.4k
Other Decks in Technology
See All in Technology
Cracking the KubeCon CfP
inductor
2
250
ChatworkのSRE部って実は 半分くらいPlatform Engineering部かもしれない
saramune
0
160
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
0
2.7k
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
3
390
いつか使うかも貯金してたらめちゃめちゃ機能が増えてた話
riyaamemiya
0
400
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
3
920
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
540
開発パフォーマンスを最大化するための開発体制
ham0215
2
450
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
200
DMM.com アルファ室採用案内資料
hsugita
1
160
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
16k
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
260
Featured
See All Featured
In The Pink: A Labor of Love
frogandcode
138
21k
What the flash - Photography Introduction
edds
64
11k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
274
13k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
116
18k
Typedesign – Prime Four
hannesfritz
36
2.1k
Teambox: Starting and Learning
jrom
128
8.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
A Tale of Four Properties
chriscoyier
151
22k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Git: the NoSQL Database
bkeepers
PRO
422
63k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Transcript
JiST/SWANS勉強会 -‐‑‒ 紹介とその他もろもろ -‐‑‒
JiST/SWANSとは? • JAVA in Simulation Time / Scalable Wireless Ad-‐‑‒
Hoc Network Simulator – Pure JAVAで作成されたネットワークシミュレータ – ⼤大規模なシミュレーションが可能 – メモリ消費量量が少ない – ⾼高速なシミュレーションを実現 – イベント駆動型シミュレータ • 現在のVersion1.0.6 – 開発は停⽌止 – 不不具合を含む
特徴など • メモリの消費が少ない • ⾼高速なシミュレーション • ⼤大規模なネットワークに対応 • Javaで記述されているためシナリオ作成 が容易易
• シミュレータのソースが公開されている • 拡張が容易易
しかし いい事ばかりなはずはなく・・・
⽋欠点・・・ • 挙動が仕様通りか怪しい – 修正を施した物があるけど、元が中々曲者な のでまだ残存する不不具合はある • コミュニティが無い – 開発⾃自体が停⽌止 • つまり今後の修正は⾒見見込めない – なのにコミュニティない
• 使⽤用者が増加しているけど、まだまだ少ない
⽋欠点・・・ • JiST/SWANSを使⽤用した論論⽂文にも修正したとし か記述がないので、公開された不不具合情報も少 ない • 期待をこめてIETFのMLを覗いても 質問者「未実装項⽬目があるんですが」 開発者「不不具合なども含めてわれわれも修正を⾏行行っていますが、最終的には皆さんの Labで使いやすいように改変してね」
俺涙⽬目 • そもそもググルと⾃自分のBlogが出てくるとか異異 常 – しかもGoogleランキング2位とか・・・ – 公式の次ってなに??
本当に使えるの??? • ⽋欠点は修正されてきているので論論⽂文での 使⽤用にも耐えられる • 現在も逐次修正中
JiST/SWANSの中⾝身 • OSIモデルに従った階層モデルを使⽤用 – 各層を1クラスとしインターフェイスを使⽤用 した接続を⾏行行っている – 各層はモジュールの概念念を持ち上・下階層の インターフェイス規約に則れば層を⾃自作可能 • ⾃自分の提案モデルに応じて追加 • 基本は3層にルーティングアルゴリズムを実装 – 電波伝搬モデルもモジュール実装
– パケットも単なるクラス – モジュールの集合体という認識識でいればおk
JiST/SWANSの中⾝身 アプリケーション トランスポート ネットワーク データリンク・物理理 フィールド 空間 プレゼンテーション・セッション層 は明確に存在しない データリンク・物理層の明確なモ
ジュール上での区別は無い
JiST/SWANSの中⾝身 • Log4Jやjargsなども含 む • これが主要構成
開発⽅方法 • Eclipse上で開発 – JavaベースのフリーのIDE • JiST/SWANSのNSL版はNAS上から取得 • 公式サイトからのDLはダメ • 後は普通のJavaのコーディング
• Javadocは公式サイト上に
まずやること • サンプルを動かす – src/driverにあるもの – ルーティングプロトコル⾃自体はsrc/jist/swans/route に • サンプルソースの理理解
– 基本的にsend/receiveメソッドで上下に繋がってい る – Eclipseの呼び出し元機能などを使えば⼤大まかなデー タの流流れがわかる • Eclipseすげー
その次にやる事 • ⼤大まかな流流れの理理解が出来たら、早速何 か作る – シナリオに各ノードの作成・各パラメータを 記述しそこから実⾏行行 – driverに相当するもの – アプリケーションソフトと思えばおk
開発の流流れ 1. 提案⽅方式を考案 2. 実装⽅方法を決定 3. シミュレータに実装 4. 実⾏行行 5.
デバッグ • この繰り返し • デバッグ実⾏行行はこまめに⾏行行う事推薦
デバッグの⽅方向性 • 不不具合の切切り分け – JiST/SWANS⾃自体が⼤大きなソフトなので、原 因が⾃自分のコードにあるのかシミュレータに あるのか切切り分ける – ここでシミュレータの理理解が乏しいと苦しむ – 流流れがわかればある程度度⾒見見通しがつく
少し突っ込んだ話 • 詳しくはWEBは使えない・・・ • このシミュレータは書いたソースを内部でバイ トコードレベルで書き換えている • メソッド→エンティティと変換 • イベント駆動に変更更する事でシミュレーション
時間上にイベントを配置する • 再帰を⾏行行ってもヒープエラーなどにはならない
下位層なんて・・・ • 理理解しなくてもシナリオ書ける • そこは上⼿手くモジュール化された恩恵 • しかし、下をしらないと思わぬところで ⾜足をすくわれるかも • 下位層にも⽬目を通すべき