Jaspis Protokol Simulator (Java Simulácia Protokoly pre Vzdelávanie a Výskum)

link: http://jaspersimulator.sourceforge.net/

Pozrite si načítať stránku získať tento program

Popis

Tento protokol simulátor poskytuje:

schopnosť interaktívne a graficky simuláciu rôznych komunikačných protokolov

rámec pre vytvorenie nového protokolu simulácie

vopred definované simulácie rôznych známych protokolov:

    • ABP (Striedavý Bitový Protokol)(Alternating Bit Protocol)
    • ABRA (Abracadabra Protokol)
    • BOOTP (Boot Protocol)
    • HTTP (HyperText Transfer Protocol)
    • IP (Internet Protocol)
    • SMTP (Simple Mail Transfer Protocol)
    • SWP (Posuvné Okno Protokol, 3 a 5 stĺpce layoutu)
    • TCP (Transmission Control Protocol)
    • TFTP (Trivial File Transfer Protocol)
    • UDP (User Datagram Protocol)

Môžete okamžite vyskúšať online simulácie získať pocit, pre čo simulátora sa. Váš internetový prehliadač bude musieť byť nakonfigurovaný na spúšťanie Java 1.5 aplety a (v ideálnom prípade) JavaScript.

Simulátor je napísaný v Jave, a tak môže byť použitý na mnohých platformách s webový prehliadač (predmet applet security) a/alebo prostredie Java. Na zostavenie alebo rozšíriť simulátor vyžaduje Java vývojové prostredia, ako napríklad Oracle JDK (a v ideálnom prípade aj Apache Ant). Na spustenie simulácie vyžaduje Java runtime environment, ako sú Oracle, DOC. Kód bol vopred zostavené pomocou JDK 1.8. Avšak, to by skompilovať a spustiť pomocou Java 5 rokov.

Inštalácia

Simulátor je poskytovaná ako Zip archív. Simulátor unpacks na adresár s názvom jaspis-N. N podľa čísla verzie. Môžete premenovať táto jaspis pre jednoduchosť. Distribúcia obsahuje:

build.xml
Ant stavať súbor na správu kód
docs
základné dokumentáciu
html
adresár pre protokol simulácia stránky a simulátor JAR archív
scenáre
príklad scenára súbory.
zdrojom
adresáre pre Java kód (protokol, simulátor, podpora)

Simulácia ako appletu

Na simulátore, môže byť použitý na rôznych protokolov otvorením html/index.html webový prehliadač. To predpokladá, sa premenovala distribúcia priečinku ako jaspis. Otvorí hlavnú stránku, všeobecné pokyny a zoznam protokolov, ktoré môžu byť simulované. Váš internetový prehliadač bude musieť byť nakonfigurovaný na spúšťanie Java apletov a (v ideálnom prípade) JavaScript. Kvôli Java bezpečnostné obmedzenia, musíte povoliť spustenie vopred skompilovaný kód vytvorený University of Stirling. Prípadne môžete použiť appletu zobrazovač súborov (hoci JavaScript, ak chcete nastaviť parametre protokolu nebude fungovať).

Väčšina simulácie sú v troch stĺpci formát: dve protokol subjektov (odosielateľ/príjemca alebo A/B) a komunikačné médium (odkaz alebo siete). Niekoľko simulácií pridať odosielanie a prijímanie užívateľov (aplikácie) na vonkajšom stĺpce. Tento formát je vhodný pre zobrazovanie, čo užívateľ vidí; zvyčajne to je len časť z toho, čo sa deje v protokole.

V webový prehliadač, vyberte akciu kliknutím na zozname v pravej dolnej časti obrázku. Akcie sú veci, ako je používateľ odosielanie údajov správu alebo médium prináša protokol správy. Ste úplne v ovládacom simulácie. Napríklad môžete rozhodnúť, kedy sa majú správy odosielať správy, či na vedomie správy, a či sa majú dodať, alebo stratiť správy v strednodobom. Od simulácia nepracuje v reálnom čase, časový limit je možné hneď, ako sa správa bola odoslaná.

Poslednú akciu v diagrame je zobrazený červenou farbou. Rôzne protokol pripomienky môžu byť označené zelenou diagram, napr., že časový limit nastali alebo o tom, že správa bola ignorovaná.

Ak urobíte chybu, alebo len chcete ustúpiť v simuláciu, potom kliknite na tlačidlo Undo. Môžete sa vrátiť späť ako mnoho krokov, ako sa vám páči, a to až do začiatku simulácie. Kliknutím na Opakovať sa bude vykonávať opäť posledný krok vrátiť späť. Zmazať sa reštartuje simulácie s súčasný protokol parametre. Ak kliknete na Run simulátor bude bežať automaticky, takže náhodných výberov pre vás. Ak si nie ste istí, čo experimentovať s, je to jednoduchý spôsob, ako vidieť protokol v praxi. Zatiaľ čo sa to deje, a Spustite tlačidlo sa zmení na Stop. Kliknutím na Stop pre návrat na simulátore kontrolou užívateľa. Môžete pokračovať v tomto bode, ako keby ste urobili všetky automatické rozhodovať sami.

Tlačiť, Načítať a Uložiť tlačidlá sú deaktivované od simulácie, sú v prevádzke podľa aplety. Ak si prajete výtlačok cvičenia, polohy posúvača v simulácia table na zaujímavé a vytlačiť celú webovú stránku.

Niektoré simulácie boli spojené protokol parametre. Ak chcete zmeniť predvolené nastavenia, ktoré sa zobrazí, zadajte nové hodnoty a kliknite na tlačidlo Zmeniť Hodnoty. V niektorých prípadoch to bude sila simulácie reštartovať. Takto je screen-shot TCP client-server simulácie, zobrazenie protokolu parametre a hlavné ovládacie prvky simulácie.

TCP Simulácia

Simulácia ako Prihláška

Bežecká protokol simulácia ako aplikácia umožňuje prístup k Tlačiť, Načítať a Uložiť tlačidlá.

Tlačiť produkuje výtlačok celý scenár simulácie. Upozorňujeme, že jednotlivé stránky nie je možné zvoliť pre tlač. Šírka tlače je určená šírka na obrazovke okno. Konštanty winWidth a winHeight ProtocolSimulator určiť veľkosť počiatočnej okna. Konštantný maxHeight TimeSequenceDiagram definuje vertikálne veľkosť tlačených strán. Aktuálne veľkosti sú vhodné pre papier formátu A4. Ak je to potrebné, zmeniť ich na (povedzme) NÁM list.

Načítať načíta scenár simulácie (súbor s názvom, ktorý sa skončil v .scn); musí to byť pre ten istý protokol, ako ste v súčasnosti na simuláciu. To nahradí súčasný scenár simulácie (ak nejaké sú). Uložiť uloží aktuálny simulácia ako scenár (súbor s názvom, ktorý sa skončil v .scn). Ak ste dobrodružný, môžete vytvárať a upravovať svoje vlastné scenáre pomocou textového editora.

Keď simulátor je spustiť ako žiadosť, povinné protokol názvu vyplýva, hlavnou simulátor triedy. Protokol parametre sa môžu potom byť uvedené, ak je to potrebné, protokoly majú predvolené nastavenia pre tieto. Predpokladajme, že simulátor bol postavený a je potrebné ho z najvyššej úrovni Jaspis. Takto (split tu cez dva riadky) bude prebiehať v TCP client-server režim, správou veľkosti okna iné ako predvolené:

 java -cp html/ProtocolSimulator.jar simulátor.ProtocolSimulator
TCP/cs windowSizeA=500 windowSizeB=300

Vývoj

Kompletný zdroj simulátore je k dispozícii. (Väčšina súbory majú Unix end-of-line.) Kód mali byť prestavaný pomocou Mravec build.xml stavať súbor. ant -p vytlačí informácie o pomoci vybudovať ciele. ant simulátor skompiluje ProtocolSimulator.jar v html directory. ant čisté odstráni všetky zostavené triedy súbory a zálohovať súbory, ale zachovaní súbor JAR. ant nevinná odstráni dokonca aj toto.

Ak nemáte Ant budete musieť zostaviť Java zdrojové súbory ručne a vytvoriť súbor JAR z výsledku.

Ak chcete upraviť existujúci protokol simuláciu alebo ak chcete napísať novú jeden bude potrebné vedomosti simulácia rámec. Zobraziť článok Interaktívnej Visual Protokol Simulátor podrobné informácie o tomto a rozšírenú príklad, ako vytvoriť simuláciu. Po rámec pochopil, jednoduché simulácie môžu byť vyvinuté vo deň; komplexné protokoly môže trvať týždeň alebo dva sa rozvíjať.

Predpokladajme, že chcete vytvoriť nový simuláciu protokol EXP (‘Príklad Protokol”). Budete musieť napísať EXP.java instantiate jednotlivých subjektov v protokole. Pre jednoduchý protokol, potom by ste napísať EXPSender.java a EXPReceiver.java ak chcete definovať správanie odoslaní alebo prijatí protokolu subjektu. Zložitejšie protokoly môžu zahŕňať definovanie samostatné subjekty zvládnuť servisné rozhranie a protokolu subjektu. To tiež môže byť potrebné definovať formáty protokolu správy a variácie na základné Stredná na zápas týchto.

Vzhľadom k zvýšenej Java bezpečnosť, aplety, musia byť podpísané správny certifikát. To bolo vykonané na vopred skompilovaný kód. Ak potrebujete obnoviť kód budete potrebovať svoje vlastné neobmedzený a digitálny certifikát. Pozri Mravec stavať súbor ako používať tieto.

Majte na pamäti, že mnoho vývoja prebehlo študentov, takže úroveň komentáre v kóde, je trochu obmedzený na miestach. Na ABP simulácie je najjednoduchšie protokolov a je dobré miesto pre štart. TFTP simulácie je najlepší komentár a najlepšie vysvetlené protokolov. To ilustruje takmer všetky hlavné body v simulácii vývoja.

Licencie

Tento program je slobodný software. Môžete ho šírit ‘a/alebo menit’ za podmienok GNU General Public License ako ju publikovala Free Software Foundation a to buď verzie 3 tejto Licencie, alebo (podľa vášho uváženia) ktorejkoľvek neskoršej verzie.

Tento program je šírený v nádeji, že bude užitočný, ale bez akejkoľvek záruky, dokonca aj bez implicitnej záruky predajnosti alebo vhodnosti na konkrétny účel. Nájdete v GNU General Public License for more details.

Poďakovanie

Protokol simulátor bol vyvinutý Počítačové Vedy a Matematiky University of Stirling. Iain A. Robin zaviazali, že väčšina rozvoja pre jeho pána projekt v rámci Ken turnera dohľad. Paul Johnson a Kenneth A. Whyte prispel k rozvoju niektorých simulácie pre svojho pána projektov. Dr. Peter J. B. Kráľ, Heriot-Watt University, za predpokladu, užitočné nápady a návrhy.

História

Verzia 1.0: Súkromné vnútorné verziu, Iain Robin, 1. septembra 1999

Verzia 1.1: Súkromné vnútorné verziu, Ken Turner, 22. decembra 2000

Verzia 1.2: Súkromné vnútorné verziu, Ken Turner, 5. Marca 2001

Verzia 1.3: Prvé verejné uvoľnenie, Ken Turner 6. júna 2001

Verzia 1.4: Všeobecná aktualizácia, Ken Turner, 9. Marca 2006:

HTML súbory aktualizované byť XHTML-kompatibilné.

Zdroj aktualizované JDK 1.5 a Swing grafike. Upozorňujeme, že JDK 1.5 alebo neskôr, je teraz potrebné znovu zostaviť zdrojový alebo spustiť kód.

Top-level adresárovej štruktúry revidovaný mať zdrojom, stavať a docs adresáre.

Makefile nahrádza Ant stavať súbor. Len stavať a vyčistiť dávkové súbory na str. (Vďaka Dr. Peter J. B. Kráľ, Heriot-Watt University, pre ktoré prispievajú k tejto.)

Prázdne riadky ignorované v scenári súbory.

ABP a SWP3 stredné ovládanie je teraz ponúkané prostredníctvom parametra (dodávka/straty, dodávky iba automatic). Bolo by možné v zásade používať s inými protokolmi, ale má zmysel iba v niektorých prípadoch. (Vďaka Dr. Peter J. B. Kráľ, Heriot-Watt University, pre ktoré prispievajú k tejto.)

SMTP protokol správy boli mierne premenovaný na súlad s RFC.

TCP predvolená veľkosť okna a obnovený aj po reštarte. Poďakovanie teraz poslaný na prijímanie dát, a nie vtedy, keď príjem okno naplní. Niektoré komplexné zmeny spôsobené to. Údaje čaká dodanie teraz poslaný, aby užívateľ pred Uzavreté. Otvorené zatiaľ čo ešte Uzávierky teraz vedie k ukončia sa, keď úplne zatvorené skôr, než okamžite. Duplicitné SYN plus ACK teraz zruší všetky retransmisiu a zároveň Zriadená.

Verzia 1.5: Rozšírenia pre nových protokolov, Ken Turner, 11. februára 2011

Hlavné nové práce boli vykonávané pre Pearson Education na nové simulácie (CSMA/CD, Multicast, Multiplexing, Zásobník Protokolu TCP Pomalý Štart) sprevádzať v deviatom ročníku “Data and Computer Komunikácie” Williamom Stallings.

Ďalšie komentáre, najmä JavaDoc, boli pridané mnohé súbory (ktoré boli tiež prepracované).

Viac dôkladné kontroly hodnôt, ktoré boli pridané k JavaScript v súboroch HTML. Okrem toho, HTML súbory boli revidovaný a prepracovaný.

TimeSequenceDiagram tried, ktoré boli upravené. Vertikálny priestor je teraz pridané pred DORUČIŤ protokol udalosti, a tiež pred KOMENTÁR (aj keď to nie je prvý). TRAVERZ protokol udalostí bol pridaný vysporiadať so situáciou, že prerušovaná šípka prechádza viacerými stĺpcami. Zodpovedajúce TraverseTransmission tried, ktoré boli pridané.

Stredná trieda bola rozšírená o dvoch isEmpty metódy: jeden skontrolujte, či médium je úplne prázdny správ, a jeden skontrolujte, či médium je prázdny správ z konkrétneho zdroja.

Všetky TCP tried boli rozšírené o podporu pomaly začať variant (TCP/ss). Okrem toho, niektoré problémy s TCP boli opravené (temný situácie, v ktorých protokolu nemal obnoviť, keď sa snažia zavrieť). TIME_WAIT štátu je v súčasnosti používaný vyrovnať sa s týmito situáciami, vrátane viac náhle ukončenie keď FIN je prijaté v neobvyklých situáciách.
Protokol teraz môžete vykonávať metód getRandNumbers a setRandomNumbers (štandardne tieto robiť nič užitočné). Ak tieto metódy sú implementované, zoznam náhodných čísel je pripojený k scenár hlavičke, keď scenár sa uloží a obnoví sa, keď scenár je načítaný. To je pre protokoly, ako napríklad CSMA, ktoré vytvárajú vlastné náhodné čísla (na rozdiel od médií, že tak ako za predchádzajúcich vydaniach). V hlavičke je teraz vo formáte, napríklad “Jasper CSMA 0.3,0.01,0.891”. Ak nie je náhodné čísla sú prítomné nasledujúce typ protokolu (ako v prípade predchádzajúceho scenára súbory), ktoré potom žiadne opatrenia.

Verzia 1.6: Distribúcia prostredníctvom SourceForge, Ken Turner, 18. decembra 2014

Simulátor bol zabalený a sprístupnené cez SourceForge.

Verzia 1.7: Aktualizácia pre Java 7u51 ďalej, Ken Turner, 28. septembra 2015

Stavať súbor teraz nastavuje “Volajúceho-Prípustné-Codebase” atribút v simulátore JAR nákladu. To je tak, že novšie Java verzie budú povoliť JavaScript prístup do simulátora applet. Užívateľ bude vyzvaný na poskytnutie prístupu k applet z ľubovoľného súboru, URL.

Vopred postavený simulátor JAR bola podpísaná s neskorším University of Stirling certifikát platný až do augusta roku 2018.