2009-09-02 18 views
18

Sto cercando uno strumento per disegnare una sequenza di pacchetti inviati per un protocollo di finestra scorrevole. Ci sono molti strumenti per disegnare diagrammi di svolgimento dei messaggi con le linee orizzontali, ma voglio essere in grado di tracciare le linee in diagonale, come la parte inferiore di questa immagine:Strumento per disegnare diagrammi sequenza protocollo

SYN,SYN+ACK,ACK example http://i32.tinypic.com/2lazp1k.jpg

prega di suggerire gli strumenti adatti. Sono molto probabilmente interessato solo a quelli gratuiti, ma se hai davvero un buon suggerimento per uno spot puoi includerlo.

risposta

24

mscgen può fare questo, utilizzando l'opzione arcgradient. Questo frammento wil rendere la seconda parte del tuo esempio esattamente:

msc { 
    arcgradient=20; 

    client, server; 
    client => server [label="SYN"]; 
    server => client [label="SYN + ACK"]; 
    client => server [label="ACK"]; 
} 

Se si copia incolla questo frammento nel mscgen_js on line demo, vedrai.

+0

Eccellente, proprio quello che volevo. – hlovdal

+0

Il link qui è ora molto obsoleto - ha la versione 0.2 della riga di comando mscgen, che manca di molte grandi funzionalità. C'è anche una versione della GUI per la costruzione di diagrammi su SourceForge. – Jason

+1

fwiw: - l'ultima versione di mscgen è 0.20; - mscgen_js (l'altro link) è ancora vivo e vegeto. – Sander

3

Si potrebbe provare umlet.com

Gentilezza,

Dan

2

trovo RFFlow essere molto veloce per l'avvio, veloce da apprendere e facile da usare. Fa diagnosticare linee e testo su pendenze, ed è buono per diagrammi a blocchi di tutti i tipi. Salva come EMF, WMF, GIF e il suo tipo nativo, e copia-incolla in Word molto bene.

6

Per chiunque ne abbia bisogno, è disponibile uno strumento da riga di comando mscgen.

10

Sto usando websequencediagrams. Essenzialmente una versione webapp di mscgen con alcuni diversi renderer fantasiosi.

enter image description here

Websequencediagrams espone anche la loro rappresentazione diagramma in API script. Ora devo conservare le mie diagrammi come file HTML, commetterli a git, mostrare belle diff, ecc vale a dire,

<html> 
<body> 
<div class="wsd" wsd_style="rose"><pre> 
App->set_state PAUSE 
<!-- your wsd diagram commands, etc... --> 
</pre></div> 
<script type="text/javascript" src="http://www.websequencediagrams.com/service.js"></script> 
</body> 
</html> 
+0

questo è uno strumento interessante: conosci uno strumento simile per la visualizzazione degli eventi in un intervallo di tempo? Stavo pensando di visualizzare quando diversi thread iniziano e si fermano in relazione tra loro su un semplice diagramma di sequenze. Ero solito registrare il tempo in qualche file di registro, quindi importare in Excel e visualizzarlo in un grafico, tuttavia se potessi trovare uno strumento come questo sarebbe molto più semplice – serup

+1

Non so di uno strumento così, ma è una buona idea aggiungere tempo soprattutto per visualizzare il threading. Esistono altri strumenti del diagramma di sequenza elencati in questa altra domanda: http://stackoverflow.com/questions/6364672/drawing-sequence-diagrams. Ma li ho brevemente sfogliati e non sembra che includano il tempo. –

Problemi correlati