title: Finding "bubbles" in a graph
body: <p><a href="https://i.stack.imgur.com/U64y5.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/U64y5.png" alt="enter image description here"></a>In a game, we have a universe described as a strongly-connected graph full of sectors and edges.  Occasionally there are small pockets, players call them 'bubbles',  where a small group of nodes all access the rest of the network through a single node.  In the graph below,  sectors 769, 195, 733, 918, and 451 are all only reachable via node 855.   If you can guard 855 effectively,  then those other sectors are safe.   Other nodes on the chart have more edges (purple lines) and aren't 'bubbles' in the player nomenclature.</p>
  
  <p>In a 1000 or 5000-node network, it's not easy to find these sorts of sub-structures.  But I suspect this idea is described in graph theory somehow, and so probably is searchable for in networkx.  </p>
  
  <p>Could anyone suggested a graph-theory approach to systematically find structures like this?  To be clear the graph is a directed graph but almost all edges end up being bi-directional in practice.  Edges are unweighted.</p>