[ovs-dev] [PATCH] vswitchd: Improve the readability of the E-R diagram.

Ben Pfaff blp at nicira.com
Mon Apr 22 22:30:32 UTC 2013


Signed-off-by: Ben Pfaff <blp at nicira.com>
---
 ovsdb/dot2pic        |    9 ++++-
 ovsdb/ovsdb-dot.in   |    1 +
 vswitchd/automake.mk |    2 +-
 vswitchd/vswitch.gv  |    1 +
 vswitchd/vswitch.pic |  114 +++++++++++++++++++++++++------------------------
 5 files changed, 69 insertions(+), 58 deletions(-)

diff --git a/ovsdb/dot2pic b/ovsdb/dot2pic
index 7b0ec36..d682be5 100755
--- a/ovsdb/dot2pic
+++ b/ovsdb/dot2pic
@@ -1,6 +1,6 @@
 #! /usr/bin/perl
 
-# Copyright (c) 2009, 2010, 2011 Nicira, Inc.
+# Copyright (c) 2009, 2010, 2011, 2013 Nicira, Inc.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,7 +17,13 @@
 use strict;
 use warnings;
 
+use Getopt::Long;
+
+my $font_scale = 0;
+GetOptions("f=i" => \$font_scale) || exit 1;
+
 my ($scale) = 1;
+printf ".ps %+d\n", -$font_scale if $font_scale;
 print ".PS\n";
 print "linethick = 1;\n";
 while (<>) {
@@ -70,4 +76,5 @@ while (<>) {
     }
 
 }
+printf ".ps %+d\n", $font_scale if $font_scale;
 print ".PE\n";
diff --git a/ovsdb/ovsdb-dot.in b/ovsdb/ovsdb-dot.in
index 85c126d..8ea8473 100755
--- a/ovsdb/ovsdb-dot.in
+++ b/ovsdb/ovsdb-dot.in
@@ -41,6 +41,7 @@ def schemaToDot(schemaFile):
     schema = ovs.db.schema.DbSchema.from_json(ovs.json.from_file(schemaFile))
 
     print "digraph %s {" % schema.name
+    print '\trankdir=LR;'
     print '\tsize="6.5,4";'
     print '\tmargin="0";'
     print "\tnode [shape=box];"
diff --git a/vswitchd/automake.mk b/vswitchd/automake.mk
index 62ace69..fd95c02 100644
--- a/vswitchd/automake.mk
+++ b/vswitchd/automake.mk
@@ -48,7 +48,7 @@ if HAVE_DOT
 	  echo "regenerating vswitch.pic";				\
 	  (echo ".\\\" Generated from vswitch.gv with cksum \"$$sum\"";	\
 	   dot -T plain < $(srcdir)/vswitchd/vswitch.gv			\
-	    | $(srcdir)/ovsdb/dot2pic) > $@;				\
+	    | $(srcdir)/ovsdb/dot2pic -f 3) > $@;			\
 	fi
 else
 	touch $@
diff --git a/vswitchd/vswitch.gv b/vswitchd/vswitch.gv
index 56d666c..51fdae1 100644
--- a/vswitchd/vswitch.gv
+++ b/vswitchd/vswitch.gv
@@ -1,4 +1,5 @@
 digraph Open_vSwitch {
+	rankdir=LR;
 	size="6.5,4";
 	margin="0";
 	node [shape=box];
diff --git a/vswitchd/vswitch.pic b/vswitchd/vswitch.pic
index 81339d2..3bd4e12 100644
--- a/vswitchd/vswitch.pic
+++ b/vswitchd/vswitch.pic
@@ -1,92 +1,94 @@
-.\" Generated from vswitch.gv with cksum "2412173910 1224"
+.\" Generated from vswitch.gv with cksum "813191710 1237"
+.ps -3
 .PS
 linethick = 1;
 linethick = 1;
-box at 1.639964024,1.91216 wid 0.4050050488 height 0.23902 "Bridge"
+box at 2.421242138,1.420752459 wid 0.3611105806 height 0.213115 "Bridge"
 linethick = 1;
-box at 5.72978744,1.31461 wid 0.3718099512 height 0.23902 "sFlow"
+box at 3.907122541,0.970866694 wid 0.3315131694 height 0.213115 "sFlow"
 linethick = 1;
-box at 6.22790512,1.31461 wid 0.3917250976 height 0.23902 "Mirror"
+box at 3.907122541,0.651194194 wid 0.3492699112 height 0.213115 "Mirror"
 linethick = 1;
-box at 0.2589399268,1.31461 wid 0.35853 height 0.23902 "IPFIX"
+box at 3.907122541,1.929884194 wid 0.3196725 height 0.213115 "IPFIX"
 linethick = 1;
-box at 0.736994268,1.31461 wid 0.35853 height 0.23902 "Port"
+box at 3.907122541,0.2249556694 wid 0.3196725 height 0.213115 "Port"
 linethick = 1;
-box at 1.321254756,1.31461 wid 0.570970976 height 0.23902 "Controller"
+box at 3.907122541,1.610211694 wid 0.509089112 height 0.213115 "Controller"
 linethick = 1;
-box at 2.03167,1.31461 wid 0.610839512 height 0.23902 "Flow_Table"
+box at 3.907122541,1.290539194 wid 0.544636694 height 0.213115 "Flow_Table"
 linethick = 1;
-box at 5.17191476,1.31461 wid 0.491329512 height 0.23902 "NetFlow"
+box at 3.907122541,2.249556694 wid 0.438079194 height 0.213115 "NetFlow"
 linethick = 0.5;
-box at 0.35853,0.71706 wid 0.35853 height 0.23902 "QoS"
-box at 0.35853,0.71706 wid 0.302974444444444 height 0.183464444444444
+box at 5.09685834,0.42623 wid 0.3196725 height 0.213115 "QoS"
+box at 5.09685834,0.42623 wid 0.264116944444444 height 0.157559444444444
 linethick = 0.5;
-box at 0.35853,0.11951 wid 0.4116450244 height 0.23902 "Queue"
-box at 0.35853,0.11951 wid 0.356089468844444 height 0.183464444444444
+box at 6.31630237,0.42623 wid 0.3670309153 height 0.213115 "Queue"
+box at 6.31630237,0.42623 wid 0.311475359744445 height 0.157559444444444
 linethick = 0.5;
-box at 0.683884024,2.50971 wid 1.367720244 height 0.23902 "Flow_Sample_Collector_Set"
-box at 0.683884024,2.50971 wid 1.31216468844444 height 0.183464444444444
+box at 0.609764638,2.113376209 wid 1.219486653 height 0.213115 "Flow_Sample_Collector_Set"
+box at 0.609764638,2.113376209 wid 1.16393109744444 height 0.157559444444444
 linethick = 0.5;
-box at 2.177759024,2.50971 wid 0.770170244 height 0.23902 "Open_vSwitch"
-box at 2.177759024,2.50971 wid 0.714614688444444 height 0.183464444444444
+box at 0.609764638,1.101079959 wid 0.686699153 height 0.213115 "Open_vSwitch"
+box at 0.609764638,1.101079959 wid 0.631143597444444 height 0.157559444444444
 linethick = 1;
-box at 2.177759024,1.91216 wid 0.35853 height 0.23902 "SSL"
+box at 2.421242138,0.781407459 wid 0.3196725 height 0.213115 "SSL"
 linethick = 1;
-box at 2.728795732,1.91216 wid 0.511215976 height 0.23902 "Manager"
+box at 2.421242138,1.101079959 wid 0.455810362 height 0.213115 "Manager"
 linethick = 1;
-box at 0.916259268,0.71706 wid 0.517860732 height 0.23902 "Interface"
+box at 5.09685834,0.1065575 wid 0.461734959 height 0.213115 "Interface"
 linethick = 1;
-spline -> from 1.83949792,1.821380204 to 1.83949792,1.821380204 to 1.872052444,1.809763832 to 1.905897676,1.799533776 to 1.938739024,1.79265 to 2.331687904,1.7101881 to 5.21254816,1.889883336 to 5.55052244,1.67314 to 5.63322336,1.620173168 to 5.6791152,1.516773116 to 5.70397328,1.43459804
-"sflow?" at 5.80627384,1.613385
+spline -> from 2.585425934,1.312575285 to 2.585425934,1.312575285 to 2.608314485,1.295909692 to 2.63111779,1.278434262 to 2.652088306,1.260916209 to 2.703534267,1.217994848 to 2.699016229,1.184834154 to 2.758645806,1.154358709 to 3.077892076,0.991453603 to 3.506551587,0.966220787 to 3.739401036,0.966092918
+"sflow?" at 3.14344625,1.207637459
 linethick = 1;
-spline -> from 1.839450116,1.821284596 to 1.839450116,1.821284596 to 1.872052444,1.809668224 to 1.905897676,1.799485972 to 1.938739024,1.79265 to 2.378774844,1.701153144 to 5.58780956,1.888544824 to 5.98219256,1.67314 to 6.07541036,1.622133132 to 6.1404238,1.518541864 to 6.18010112,1.43579314
-"mirrors*" at 6.30725976,1.613385
+spline -> from 2.602048904,1.315686764 to 2.602048904,1.315686764 to 2.620845647,1.299234286 to 2.638150585,1.280949019 to 2.652088306,1.260916209 to 2.760819579,1.104916029 to 2.618714497,0.975299486 to 2.758645806,0.846535403 to 3.02580677,0.600728562 to 3.482938445,0.603584303 to 3.732325618,0.627240068
+"mirrors*" at 3.14344625,0.899814153
 linethick = 1;
-spline -> from 1.44033452,1.898966096 to 1.44033452,1.898966096 to 1.223830204,1.877406492 to 0.873952728,1.820806556 to 0.610839512,1.67314 to 0.505861928,1.614245472 to 0.4118171188,1.51466974 to 0.3474107896,1.435362904
-"ipfix?" at 0.733647988,1.613385
+spline -> from 2.530911117,1.527523074 to 2.530911117,1.527523074 to 2.592927582,1.581867399 to 2.674721119,1.644139602 to 2.758645806,1.681221612 to 3.076357648,1.821664397 to 3.190203681,1.737569218 to 3.528246694,1.817402097 to 3.60036481,1.834408674 to 3.679046868,1.85708411 to 3.745964978,1.877628396
+"ipfix?" at 3.14344625,1.870680847
 linethick = 1;
-spline -> from 1.439569656,1.871861228 to 1.439569656,1.871861228 to 1.302372176,1.836725288 to 1.12195988,1.775010324 to 0.989255976,1.67314 to 0.907176508,1.610086524 to 0.84111138,1.512853188 to 0.797179504,1.43555412
-"ports*" at 1.132046524,1.613385
+spline -> from 2.602091527,1.31918185 to 2.602091527,1.31918185 to 2.621399746,1.301919535 to 2.638832553,1.28252607 to 2.652088306,1.260916209 to 2.832980318,0.966817509 to 2.525753734,0.746286107 to 2.758645806,0.491357944 to 3.012678886,0.2132940166 to 3.494830262,0.1973231785 to 3.745964978,0.2103359804
+"ports*" at 3.14344625,0.544636694
 linethick = 1;
-spline -> from 1.43842236,1.800203032 to 1.43842236,1.800203032 to 1.39420366,1.765545132 to 1.353140024,1.72309518 to 1.327899512,1.67314 to 1.291090432,1.600334508 to 1.29022996,1.508168396 to 1.298165424,1.435506316
-"controller*" at 1.573564268,1.613385
+spline -> from 2.60341284,1.443981994 to 2.60341284,1.443981994 to 2.866141012,1.477483672 to 3.352469442,1.539500137 to 3.651128803,1.577562476
+"controller*" at 3.14344625,1.616136291
 linethick = 1;
-spline -> from 1.733755472,1.79241098 to 1.733755472,1.79241098 to 1.76205544,1.754837036 to 1.792697804,1.71281732 to 1.819229024,1.67314 to 1.870666128,1.596127756 to 1.923776372,1.506495256 to 1.96402734,1.436127768
-"flow_tables value*" at 2.327146524,1.613385
+spline -> from 2.601835789,1.365385182 to 2.601835789,1.365385182 to 2.652130929,1.352086806 to 2.707114599,1.339598267 to 2.758645806,1.33196875 to 3.055685493,1.28806706 to 3.400420317,1.281460495 to 3.634079603,1.283463776
+"flow_tables value*" at 3.14344625,1.3852475
 linethick = 1;
-spline -> from 1.83949792,1.821523616 to 1.83949792,1.821523616 to 1.872100248,1.809907244 to 1.90594548,1.799629384 to 1.938739024,1.79265 to 2.27451432,1.721230824 to 4.744929432,1.870188088 to 5.02611256,1.67314 to 5.103077,1.61912148 to 5.13940804,1.516964332 to 5.15661748,1.435458512
-"netflow?" at 5.32154128,1.613385
+spline -> from 2.465612681,1.527650943 to 2.465612681,1.527650943 to 2.518635693,1.642392059 to 2.618245644,1.821962758 to 2.758645806,1.923959597 to 3.037826456,2.126717208 to 3.4396761,2.203481231 to 3.686505893,2.232337002
+"netflow?" at 3.14344625,2.267287862
 linethick = 0.5;
-spline -> from 6.03429892,1.412082356 to 6.03429892,1.412082356 to 6.01469928,1.420209036 to 5.9946216,1.427714264 to 5.9755,1.43412 to 5.56247344,1.571030656 to 5.44869992,1.583650912 to 5.01607372,1.626674512 to 4.690146048,1.65903782 to 4.606536852,1.636187508 to 4.279127256,1.626674512 to 2.80920206,1.583842128 to 2.396749148,1.813492544 to 0.976014268,1.43412 to 0.956271216,1.42886156 to 0.936289144,1.421882176 to 0.916689504,1.413898908
-"select_src_port*" at 4.647600488,1.613385
+spline -> from 3.907122541,0.3339597296 to 3.907122541,0.3339597296 to 3.907122541,0.3983332465 to 3.907122541,0.47950875 to 3.907122541,0.543613742
+"select_src_port*" at 4.235660625,0.438079194
 linethick = 0.5;
-spline -> from 6.03429892,1.412082356 to 6.03429892,1.412082356 to 6.01469928,1.420209036 to 5.9946216,1.427714264 to 5.9755,1.43412 to 5.56247344,1.571030656 to 5.44869992,1.583650912 to 5.01607372,1.626674512 to 4.690146048,1.65903782 to 4.606536852,1.636187508 to 4.279127256,1.626674512 to 2.80920206,1.583842128 to 2.396749148,1.813492544 to 0.976014268,1.43412 to 0.956271216,1.42886156 to 0.936289144,1.421882176 to 0.916689504,1.413898908
-"output_port?" at 4.647600488,1.613385
+spline -> from 3.74485678,0.2306373153 to 3.74485678,0.2306373153 to 3.380984229,0.2450481516 to 2.525029143,0.2888859071 to 2.438973306,0.3847919194 to 2.40734704,0.4200454027 to 2.40734704,0.456108723 to 2.438973306,0.491357944 to 2.524176683,0.586279365 to 3.364062898,0.630223678 to 3.733817423,0.645056482
+"output_port?" at 2.708350666,0.438079194
 linethick = 0.5;
-spline -> from 6.03429892,1.412082356 to 6.03429892,1.412082356 to 6.01469928,1.420209036 to 5.9946216,1.427714264 to 5.9755,1.43412 to 5.56247344,1.571030656 to 5.44869992,1.583650912 to 5.01607372,1.626674512 to 4.690146048,1.65903782 to 4.606536852,1.636187508 to 4.279127256,1.626674512 to 2.80920206,1.583842128 to 2.396749148,1.813492544 to 0.976014268,1.43412 to 0.956271216,1.42886156 to 0.936289144,1.421882176 to 0.916689504,1.413898908
-"select_dst_port*" at 4.647600488,1.613385
+spline -> from 3.746007601,0.232167481 to 3.746007601,0.232167481 to 3.499731907,0.2491570088 to 3.072905185,0.3055728116 to 3.220423388,0.491357944 to 3.283377559,0.570679347 to 3.551945082,0.614240053 to 3.733945292,0.635125323
+"select_dst_port*" at 3.551902459,0.438079194
 linethick = 1;
-spline -> from 0.659121552,1.193092232 to 0.659121552,1.193092232 to 0.63507614,1.155470484 to 0.60854492,1.1138332 to 0.584260488,1.07559 to 0.533827268,0.996091948 to 0.4774089872,0.906459448 to 0.43358228,0.836713412
-"qos?" at 0.6871825,1.015835
+spline -> from 4.067598136,0.2520979958 to 4.067598136,0.2520979958 to 4.29469348,0.2905141057 to 4.70728412,0.3603433666 to 4.93531717,0.3988702963
+"qos?" at 4.52272653,0.4203096653
 linethick = 1;
-spline -> from 0.773277504,1.19366588 to 0.773277504,1.19366588 to 0.804350104,1.090026808 to 0.848951236,0.941404172 to 0.880023836,0.837812904
-"interfaces+" at 1.108765976,1.015835
+spline -> from 4.068450596,0.186646117 to 4.068450596,0.186646117 to 4.135411329,0.1722054446 to 4.214050764,0.1570870665 to 4.28616888,0.1479955806 to 4.48052976,0.1234234211 to 4.70259559,0.1133175078 to 4.86541545,0.1092129129
+"interfaces+" at 4.52272653,0.2012743306
 linethick = 1;
-spline -> from 0.35853,0.59611588 to 0.35853,0.59611588 to 0.35853,0.492476808 to 0.35853,0.3438732936 to 0.35853,0.2402533432
-"queues value*" at 0.690480976,0.418285
+spline -> from 5.25882574,0.42623 to 5.25882574,0.42623 to 5.48515387,0.42623 to 5.89433467,0.42623 to 6.13174478,0.42623
+"queues value*" at 5.73023612,0.47950875
 linethick = 1;
-spline -> from 0.877346812,2.38876588 to 0.877346812,2.38876588 to 1.043226692,2.285126808 to 1.280955984,2.136504172 to 1.446740256,2.032912904
-"bridge" at 1.390952988,2.210935
+spline -> from 0.888817419,2.00669084 to 0.888817419,2.00669084 to 1.263985065,1.863264445 to 1.920421888,1.612257598 to 2.238346845,1.490696802
+"bridge" at 1.70492,1.882530041
 linethick = 1;
-spline -> from 0.640764816,2.38852686 to 0.640764816,2.38852686 to 0.559115584,2.158876444 to 0.3827570672,1.66286214 to 0.3015046084,1.434311216
-"ipfix?" at 0.640717012,1.91216
+spline -> from 1.117404568,2.220359939 to 1.117404568,2.220359939 to 1.711441319,2.323507599 to 2.716960512,2.428999524 to 3.528246694,2.166654959 to 3.583827086,2.148710676 to 3.58587299,2.121645071 to 3.634804194,2.089720444 to 3.670607514,2.06636304 to 3.709863297,2.042366291 to 3.747158422,2.0203302
+"ipfix?" at 2.421242138,2.385694556
 linethick = 1;
-spline -> from 1.906375716,2.389148312 to 1.906375716,2.389148312 to 1.85455618,2.356545984 to 1.804553196,2.317155488 to 1.766070976,2.27069 to 1.70971006,2.2025693 to 1.677776988,2.107534948 to 1.660185116,2.032434864
-"bridges*" at 1.958625488,2.210935
+spline -> from 0.953945363,1.164289868 to 0.953945363,1.164289868 to 1.071883204,1.18577186 to 1.204696472,1.209811232 to 1.326044153,1.231335847 to 1.647123212,1.288280175 to 2.021566267,1.352598282 to 2.23898619,1.389722915
+"bridges*" at 1.70492,1.420752459
 linethick = 1;
-spline -> from 2.177759024,2.38876588 to 2.177759024,2.38876588 to 2.177759024,2.285126808 to 2.177759024,2.136504172 to 2.177759024,2.032912904
-"ssl?" at 2.260746768,2.210935
+spline -> from 0.953945363,1.037912673 to 0.953945363,1.037912673 to 1.071883204,1.016388058 to 1.204696472,0.992391309 to 1.326044153,0.970866694 to 1.657565847,0.912046954 to 2.045989246,0.845384582 to 2.259700968,0.808899294
+"ssl?" at 1.70492,1.024145444
 linethick = 1;
-spline -> from 2.289237952,2.38876588 to 2.289237952,2.38876588 to 2.384845952,2.285126808 to 2.52190002,2.136504172 to 2.617460216,2.032912904
-"manager_options*" at 2.924696524,2.210935
+spline -> from 0.9547552,1.101079959 to 0.9547552,1.101079959 to 1.318116275,1.101079959 to 1.880057907,1.101079959 to 2.192271382,1.101079959
+"manager_options*" at 1.70492,1.154358709
+.ps +3
 .PE
-- 
1.7.2.5




More information about the dev mailing list