Tor keeps on creating new circuits even when it's idle
Something is weird on latest master, and Tor will keep on creating new circuits even when it's completely idle. We are talking about 10 circuits per minute. I added a hook in circuit_predict_and_launch_new()
and here is what I see:
Nov 10 15:56:26.000 [info] circuit_predict_and_launch_new(): Have 0 clean circs (0 internal), need another exit circ.
Nov 10 15:56:27.000 [info] circuit_predict_and_launch_new(): Have 1 clean circs (0 internal), need another exit circ.
Nov 10 15:56:28.000 [info] circuit_predict_and_launch_new(): Have 2 clean circs (0 uptime-internal, 0 internal), need another hidden service circ.
Nov 10 15:56:29.000 [info] circuit_predict_and_launch_new(): Have 3 clean circs (1 uptime-internal, 1 internal), need another hidden service circ.
Nov 10 15:56:30.000 [info] circuit_predict_and_launch_new(): Have 4 clean circs (2 uptime-internal, 2 internal), need another hidden service circ.
Nov 10 15:56:31.000 [info] circuit_predict_and_launch_new(): Have 4 clean circs (2 uptime-internal, 2 internal), need another hidden service circ.
Nov 10 15:56:42.000 [info] circuit_predict_and_launch_new(): Have 5 clean circs need another buildtime test circ.
Nov 10 15:56:53.000 [info] circuit_predict_and_launch_new(): Have 6 clean circs need another buildtime test circ.
Nov 10 15:57:04.000 [info] circuit_predict_and_launch_new(): Have 7 clean circs need another buildtime test circ.
Nov 10 15:57:15.000 [info] circuit_predict_and_launch_new(): Have 8 clean circs need another buildtime test circ.
Nov 10 15:57:26.000 [info] circuit_predict_and_launch_new(): Have 9 clean circs need another buildtime test circ.
Nov 10 15:57:37.000 [info] circuit_predict_and_launch_new(): Have 10 clean circs need another buildtime test circ.
Nov 10 15:57:48.000 [info] circuit_predict_and_launch_new(): Have 11 clean circs need another buildtime test circ.
Nov 10 15:57:50.000 [info] circuit_predict_and_launch_new(): Have 6 clean circs (0 uptime-internal, 0 internal), need another hidden service circ.
Nov 10 15:57:51.000 [info] circuit_predict_and_launch_new(): Have 7 clean circs (1 uptime-internal, 1 internal), need another hidden service circ.
Nov 10 15:57:52.000 [info] circuit_predict_and_launch_new(): Have 8 clean circs (2 uptime-internal, 2 internal), need another hidden service circ.
Nov 10 15:58:03.000 [info] circuit_predict_and_launch_new(): Have 9 clean circs need another buildtime test circ.
Nov 10 15:58:14.000 [info] circuit_predict_and_launch_new(): Have 10 clean circs need another buildtime test circ.
Nov 10 15:58:25.000 [info] circuit_predict_and_launch_new(): Have 8 clean circs need another buildtime test circ.
Nov 10 15:58:36.000 [info] circuit_predict_and_launch_new(): Have 9 clean circs need another buildtime test circ.
Nov 10 15:58:47.000 [info] circuit_predict_and_launch_new(): Have 10 clean circs need another buildtime test circ.
Nov 10 15:58:52.000 [info] circuit_predict_and_launch_new(): Have 6 clean circs (1 uptime-internal, 1 internal), need another hidden service circ.
Nov 10 15:58:53.000 [info] circuit_predict_and_launch_new(): Have 6 clean circs (1 uptime-internal, 1 internal), need another hidden service circ.
Nov 10 15:58:54.000 [info] circuit_predict_and_launch_new(): Have 7 clean circs (2 uptime-internal, 2 internal), need another hidden service circ.
Seems like Tor continuously thinks it needs HS circs and build time testing circs. This probably causes lots of unneeded traffic on the network.
Not sure how far back in Tor releases this goes.