1. 13

Currently I am drawing network diagrams w/ Visio which I am not very fond if it but failed to find a better tool for. I’d be particular interested in automated systems which draw the graphs based on metadata. I know we are way more devs here than admins / systems engineers but I thought I might give it a shot.

  1.  

  2. 10

    The docs are not great, but graphviz is the Unix standard.

    1. 6

      For manual diagrams, to give a different answer than Dia (which is well represented so far), I use TikZ. It’s mainly used by LaTeX users, because it started as a way to do LaTeX diagrams right in the source, but it’s a pretty full-featured diagramming language and can also export to standalone PDF or EPS (which can in turn be rasterized if desired).

      1. 1

        Also interesting when using TikZ is the graph layout engine, where the desired algorithm structure of the graph is given as input to TikZ and it automatically generates a graph with the specified layout/algorithm.

        Information is in the manual (8.8MB) in section 4.

        1. 2

          Ah yes, I forgot to mention the manual too! It is… impressive. 1161 pages. That has its pros and cons, but definitely every feature is well documented.

      2. 4

        So, there’s a lot about scale to be said when talking about network diagrams. It might be relatively trivial to generate something that can be mapped out with dot/graphviz if your scale is small - like a local network, or if your detail granularity is low - like only the actual lines between elements, the logical links between routers.

        However, if your purpose is proper documentation, it will be non-trivial, and I have yet to see proper auto-generated diagrams that can also be viewed as proper documentation that reads intuitively.

        I prefer omnigraffle on Mac to draw my diagrams, but it has become a lot less about the tools for me, and a lot more about how you draw. Good network diagramming is an skill that has to be learned, I believe. It has a lot to do with learning how to draw complex topologies in a readable fashion, how to order elements on the canvas and all that.

        I would advise you to find a tool that you believe have the features you require, and then train yourself by only focusing on the things that you draw on the diagram, and how they are presented.

        1. 1

          I would advise you to find a tool that you believe have the features you require, and then train yourself by only focusing on the things that you draw on the diagram, and how they are presented.

          Which is a very good advice. Only problem I have with this is that there are multiple hands touching the graphs where I work and they have different opinions about what’s the right way to draw a diagram, so over time diagrams are being polluted by different styles and different mindsets making them virtually unmaintainable. I know that this is a social problem for which I am searching a technical solution which is … not optimal. The other part is that my hope is that an automated process could help against documentation rotting away.

          But I totally agree that it is a skill to be learned and if you mastered it, the tooling becomes irrelevant.

          1. 1

            Yeah, that is a problem, and with no simple solution.

            I worked a place once that solved at least some of the problems by having formalised guidelines for how to draw diagrams, including stencils for everything, all lines and shapes.

            That at least helps to keep diagrams stylistically similar, but I totally get why you want the automated approach.

        2. 3

          I’ve found yEd to be a great fit for network diagrams. The combination of features really works well, with a visual tool and a the automatic layout options.

          1. 1

            I switched from Dia to yEd a few years ago and has been adequate for all my diagramming needs. It is also one of the few Swing apps that does not lag.

          2. 3

            OmniGraffle uber alles. But, mac only. Back in the day I used xfig/tgif.

            1. 2

              Inkscape is very good for general drawing, it’s native format is SVG.

              If I want a graph or digraph…. so far nothing I have found beats graphviz.

              If I’m drawing sequence diagrams I use mscgen.

              1. 2

                I’ve been using Dia but it’s just a free version of Visio + upnp mappers. Sadly still manual work.

                1. 2

                  I also use Dia for manual diagrams and GraphViz (dot) for automated diagrams. I wrote a wrapper around dot that makes specifying the graph a lot easier.

                  http://rkeene.org/tmp/graphviz/

                  1. 2

                    How large are the networks you guys graph with graphviz? I am looking for something capable of handling small networks as well as larger ones (multinational company with ~12 VPN sites).

                    1. 1

                      I just use graphviz, but I don’t know how to make good looking graphs and more compelling visuals would probably help when I’m taking architecture.

                      1. 1

                        Gliffy. Not recommended.

                        1. 1

                          not sure if this fits your requirements, but I’ve been meaning to try out AWS Network Mapping with Lucidchart Import (video)

                          1. 1

                            I also use Dia for manual graphs. For automated graph-creation http://graphviz.org may be what you need, but I found tweaking the final output not easy.

                            1. 1

                              In ye olden days before Dia, there was Xifg. (You could probably force other vector editors into the role, but it’ll be a kicking and screaming thing.)

                              1. 0

                                I looked for a good Linux-based alternative to Visio for a long time, but I was never very happy with any of the options. I stopped looking once I started using Draw.io a few years ago. It integrates with Google Docs where I’m doing much of my documentation these days, and the drawings look great.