ucloud_common/docs/ucloud-networking.dot

37 lines
1.2 KiB
Plaintext

digraph G {
ucloud_api [shape=box];
ucloud_router [shape=box];
ucloud_nat64 [shape=box];
{
rank = same;
ucloud_api;
ucloud_router;
ucloud_nat64;
}
ucloud_api -> REQUEST_IPV6_SLASH_64 [label="Requested by user" style="dotted"];
ucloud_api -> REQUEST_IPV4_ADDRESS [label="Requested by user" style="dotted"];
ucloud_router -> HAS_IPV6_SLASH_64 [label="Adding route" style="dotted"];
ucloud_nat64 -> HAS_IPV4_ADDRESS [label="Adding NAT64" style="dotted"];
ucloud_router -> DELETE_IPV6_SLASH_64 [label="Deleting route" style="dotted"];
ucloud_nat64 -> DELETE_IPV4_ADDRESS [label="Removing NAT64" style="dotted"];
ERROR;
ERROR -> DEFAULT;
DEFAULT -> REQUEST_IPV6_SLASH_64;
REQUEST_IPV6_SLASH_64 -> HAS_IPV6_SLASH_64 [label="If another /64 can be routed"];
REQUEST_IPV6_SLASH_64 -> ERROR [label="If no /64 can be routed"];
DEFAULT -> REQUEST_IPV4_ADDRESS;
REQUEST_IPV4_ADDRESS -> HAS_IPV4_ADDRESS;
REQUEST_IPV4_ADDRESS -> ERROR [label="If IPv4 address can be added"];
HAS_IPV6_SLASH_64 -> DELETE_IPV6_SLASH_64 -> DEFAULT;
HAS_IPV4_ADDRESS -> DELETE_IPV4_ADDRESS -> DEFAULT;
}