vyuka:cviceni:x36dsi:projekt1

This is an old revision of the document!


X36DSI: Zadání projektu č.1

Nasimulujte pomocí výukového systému na SHO 4-portový přepínač (switch). Ke každému portu přepínače je připojen rozbočovač (hub), na který je připojeno N počítačů. Všechny linky mají technologii Ethernet 100 Mbps. Použita je metoda přístupu k médiu CSMA/CD.

Od simulujte komunikaci, při které každý počítač komunikuje s M počítači z jiných sítí (náhodně). Počítač posílá ostatním počítačům (přes switch) rámce délky 1500 bytů, a to v intervalu s rovnoměrným rozložením od 100 do 500 ms.

Stanice, která chce odeslat zprávu, ověří, že je médium volné. Zahájí vysílání a neustále sleduje (příposlechem nosné), zda nenastala kolize. V případě kolize odešle 32-bitovou kolizní posloupnost (jam) s hodnotou 0xFFFFFFFF. Poté médium uvolní a počká náhodnou dobu T (rovnoměrné rozložení 100 až 200 ms). Poté se pokusí znovu rámec odeslat. Neuspěje-li, počká dobu 2T. Potom 4T, 8T, 16T a pokud i potom neuspěje, ohlásí chybu a rámec již neodesílá.

Přepínač můžete simulovat se 4 vstupními frontami. Výstupní fronty jsou nepovinné (ale vhodné). Přepínač již od začátku simulace bude vědět, v jakém směru leží který počítač, a rámce pro tento počítač posílá pouze na ten jeden konkrétní port. Moteda přepínání přepínače je “Fragment Free”, viz http://en.wikipedia.org/wiki/Fragment_free.

Implementujte pomocí výukového systému na SHO algoritmus Leader Election. Konkrétní algoritmus si zvolte sami. Spočítejte množství předaných zpráv, minimální, průměrné a maximální množství přenesených bitů na jednu linku. Zaměřte se na přehlednost řešení a vizuální stránku programu. Na Vašem řešení by mělo být možno demonstrovat průběh vybraného algoritmu.

  • vybraný algoritmus musí respektovat topologii sítě a její vlastnosti (včetně simulace ztráty zpráv)
  • algoritmus musí být funkční a jeho průběh musí být názorně vizualizován
  • program musí umožnit výpočet nad libovolnou sítí zadanou pomocí matice sousednosti v souboru (ke stažení zde)
  • využijte výukový systém SHO
  • doporučené volání: ./simulace matice.txt 0.001 (kde matice.txt obsahuje matici sousednosti a 0.001 je bitová chybovost sítě)
  • vypracujte krátkou zprávu popisující Vámi zvolený algoritmus a způsob jeho implementace ve výukovém systému SHO. Kromě popisu algoritmu uveďte i způsob rozhodování, zda se rámec ztratí, způsob Vašeho vypořádání s chybovostí linky a detekci ukončení algoritmu.

Výukový systém na SHO byl upraven, aby umožnil načtení parametrů příkazové řádky 8-) (30.3.2009, zatím pouze linuxová verze). Stáhněte si novou verzi.

Počet parametrů je v proměnné argc. Jednotlivé parametry získáte pomocí proměnné argv, např. (*argv)[1].

Nejzašší termín pro odevzdání projektu je 16.4.2009 23:59:59.99. Za každý týden prodlení je penalizace -5 bodů.

Způsob odevzdání: Pošlete mi mail na adresu xsmitka(zavináč)fel.cvut.cz, jako přílohu přiložte:

1. dokumentaci k algoritmu (PDF,TXT,HTML,…)
2. hlavni.cc (případně Main0.cpp)
3. pokud jste měnili i ostatní soubory simulátoru, tak zazipovaný celý projekt (pouze zdrojové texty, ne binární soubory)

Dotazy směřujte na xsmitka(zavináč)fel.cvut.cz.

  • vyuka/cviceni/x36dsi/projekt1.1299677598.txt.gz
  • Last modified: 2011/03/09 13:33
  • by smitka