#

Note

This documents the development version of NetworkX. Documentation for the current release can be found here.

#

networkx.generators.internet_as_graphs.random_internet_as_graph

random_internet_as_graph(n, seed=None)[source]

Generates a random undirected graph resembling the Internet AS network

Parameters
  • n (integer in [1000, 10000]) – Number of graph nodes

  • seed (integer, random_state, or None (default)) – Indicator of random number generation state. See Randomness.

Returns

G – A randomly generated undirected graph

Return type

Networkx Graph object

Notes

This algorithm returns an undirected graph resembling the Internet Autonomous System (AS) network, it uses the approach by Elmokashfi et al. [1] and it grants the properties described in the related paper [1].

Each node models an autonomous system, with an attribute ‘type’ specifying its kind; tier-1 (T), mid-level (M), customer (C) or content-provider (CP). Each edge models an ADV communication link (hence, bidirectional) with .. attribute:: - type

transit|peer, the kind of commercial agreement between nodes;

- customer

<node id>, the identifier of the node acting as customer (‘none’ if type is peer).

References

[1] A. Elmokashfi, A. Kvalbein and C. Dovrolis, “On the Scalability of BGP: The Role of Topology Growth,” in IEEE Journal on Selected Areas in Communications, vol. 28, no. 8, pp. 1250-1261, October 2010.