From c27bb1189d7912ccb34229dc3232461410a04136 Mon Sep 17 00:00:00 2001 From: Su Wang Date: Thu, 5 Dec 2019 15:58:13 +0000 Subject: [PATCH] Added document describing libnetwork traffic flow. Signed-off-by: Su Wang --- .../docs/images/network_flow_bridge.png | Bin 0 -> 42880 bytes .../docs/images/network_flow_overlay.png | Bin 0 -> 107252 bytes libnetwork/docs/network.md | 143 ++++++++++++++++++ 3 files changed, 143 insertions(+) create mode 100644 libnetwork/docs/images/network_flow_bridge.png create mode 100644 libnetwork/docs/images/network_flow_overlay.png create mode 100644 libnetwork/docs/network.md diff --git a/libnetwork/docs/images/network_flow_bridge.png b/libnetwork/docs/images/network_flow_bridge.png new file mode 100644 index 0000000000000000000000000000000000000000..4660f9fe34c1b98df7ca25aa6dfed3128924b506 GIT binary patch literal 42880 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 AhX4Qo literal 0 HcmV?d00001 diff --git a/libnetwork/docs/images/network_flow_overlay.png b/libnetwork/docs/images/network_flow_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..6606acb1c33a856108a57a94c392e9036dd6a647 GIT binary patch literal 107252 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 z qVXK#ccUpX3@6Ku=_V~jpNaU9L-&X;_ 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 literal 0 HcmV?d00001 diff --git a/libnetwork/docs/network.md b/libnetwork/docs/network.md new file mode 100644 index 0000000000..9f79d9c045 --- /dev/null +++ b/libnetwork/docs/network.md @@ -0,0 +1,143 @@ + +# Docker Networking With Libnetwork + +This document describes docker networking in bridge and overlay mode delivered via libnetwork. Libnetwork uses iptables extensively to configure NATting and forwarding rules. [https://wiki.archlinux.org/index.php/iptables](https://wiki.archlinux.org/index.php/iptables) provides a good introduction to iptables and its default chains. More details may be found in [http://ipset.netfilter.org/iptables-extensions.man.html](http://ipset.netfilter.org/iptables-extensions.man.html) + + +# Bridge Mode + +![alt_text](images/network_flow_bridge.png "image_tooltip") + + +The above diagram illustrates the network topology when a container instantiated with network mode set to bridge by docker engine. In this case, the libnetwork does the following + + + +1. Creates a new network namespace container NS for this container +2. Creates a veth-pair, attaching one end to docker0 bridge on host NS, and move the other end to the new container NS. +3. In the new NS, assigns an IP address from docker0 subnet, sets default route gateway to docker0 IP address. + +This completes network setup for container running in bridge mode. Outbound traffic from container flows through routing (Container NS) ? veth-pair ? docker0 bridge (Host NS) ---> docker0 interface (HOST NS) ? routing (HostNS) ? eth0 (HostNS) and out of host. And inbound traffic to container flows through the reverse direction. + +Note that the container?s assigned IP (172.17.0.2 in above example) address is on docker0 subnet, and is not visible to externally to host. For this reason, a default masquerading rule is added to nat iptable?s POSTROUTING chain in host NS at docker engine initialization time. It states that for request traffic flow that has gone through the routing stage and the srcIP is within docker0 subnet (172.17.0.0/16), the traffic request must be originated from docker containers, therefore its srcIP is replaced with IP of outbound interface determined by routing. In the above diagram eth0?s IP 172.31.2.1 is used by replacement IP. In another word, masquerade is same as SNAT with replacement srcIP set to outbound interface?s IP. + +If the container backends a service and has a listening targetPort in the container NS, it also must also have a corresponding publishedPort in host NS to receive the request and forward it to the container. Two rules are created in host NS for this purpose: + + + +1. In nat iptable, a DOCKER(nat) chain is inserted to PREROUTING chain. And a rule such as ?DNAT tcp any any dport:45999 to conrts? is added to DOCKER chain, it does a DNAT for any traffic arriving at eth0 of host NS with dstIP=172.17.0.2 and dst Port=80, so that the DNATted request become routable to backend container listening on port 80. +2. In filter iptable, a DOCKER(filter) chain is inserted to FORWARD chain. And a rule such as ?ACCEPT tcp any containerIP dport:targetPort? is added. This allows request that is DNATted in 1) to be forwarded container. + + +# Swarm/Overlay Mode + +Libnetwork use completely different set of namespaces, bridges, and iptables to forward container traffic in swarm/overlay mode. + + +![alt_text](images/network_flow_overlay.png "image_tooltip") + + +As depicted in the above diagram, when a host joinis a swarm cluster, the docker engine creates following network topology. + +Initial Setup ( before any services are created) + + + +1. In host NS, creates a docker_gwbridge bridge, assigning a subnet range to this bridge. In this above diagram 172.18.0.1/16. This subnet is local, and does not leak outside of the host. +2. In host NS, adds masquerading rule in nat iptable (5) PREROUTING chain for any request with srcIP within 172.18.0.0/16 subnet. +3. Creates a new network namespace ingress_sbox NS, creates two veth-pairs, one eth1 connects to docker_gwbridge bridge with fixed IP 172.18.0.2, and other (eth0) connected to ingress NS bridge br0. The eth0 is assigned an IP address, in this example, 10.255.0.2. +4. In ingress_sbox NS, adds to nat iptable(2)?s PREROUTING chain a rule that snat and redirect service request to ipvs for load-balancing. For instance, + + ?SNAT all -- anywhere 10.255.0.0/16 ipvs to:10.255.0.2? + +5. In ingress_sbox NS, adds to nat iptable(2)?s POSTROUTING and OUTPUT chains rules that allows DNS lookup to be redirected to/from docker engine as is required by swarm service discovery. +6. Creates a new network namespace ingress NS, and creates a bridge br0 that has two links, one attaches to eth0 interface on ingress_sbox NS, and other to vxlan interface that in essence makes bridge br0 span across all hosts on the same swarm cluster. Each eth0 interface in ingress_sbox, each container instance of a service, and each service itself are given a unique IP 10.255.xx.xx, and is attached to br0, so that on the same swarm cluster, services, container instances of services, and ingress_sbox?s eth0 are all connected via bridge br0. + +When a service is created, say with targetPort=80 and publishedPort=30000. The following are added to the existing network topology. + +Service Setup + + + +1. A container backends the service has its own namespace container NS. And two vether-pairs are created, eth1 is attached to docker_gwbridge in host NS, is given an IP assigned from docker_gwbridge subnet, in the example, 172.18.0.2, eth0 is attached to br0 in ingress NS, is given an IP of 10.255.0.5 in this example. +2. In container NS, adds rules to filter iptable (3)?s INPUT and OUTPUT chain that only allows targetPortt =80 traffic. +3. In container NS, adds rule to nat iptables (4)?s PREROUTING chain that changes publishedPort to targetPort. For instance, + + ?REDIRECT tcp -- anywhere 10.255.0.11 tcp dpt:30000 redir ports 80? + +4. In container NS, adds rules to nat iptable(4)?s INPUT/OUTPUT chain that allow DNS lookup in this container to be redirected to docker engine. +5. In host NS, in filter iptable (5)?s FORWARD chain, inserts DOCKER-INGRESS chain, and adds a rule to allow service request to port 30000 and its reply. + + I.e ?ACCEPT tcp -- anywhere anywhere tcp dpt:30000? and + + + ?ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED tcp spt:30000? + +6. In host NS, in nat iptable(6)?s PREROUTING chain, inserts (different) DOCKER-INGRESS chain, and adds a rule to dnat service request to ingress NS?s eth1?s IP (172.18.0.2). i.e + + ?DNAT tcp -- anywhere anywhere tcp dpt:30000 to:172.18.0.2:30000? + +7. In ingress_sbox NS, in mangle iptable(1)?s PREROUTING chain, adds a rule to mark service request, i.e + + ?MARK tcp -- anywhere anywhere tcp dpt:30000 MARK set 0x100? + +8. In ingress_sbox NS, in nat iptable(2)?s POSTROUTING chain, adds a rule to snat request?s srcIP to eth1?s IP, and forward to ipvs to load-balancing, i.e + + ?SNAT all -- 0.0.0.0/0 10.255.0.0/16 ipvs to:10.255.0.2? + +9. In ingress_sbox, configures ipvs LB policy for marked traffic, i.e + + FWM 256 rr + + + -> 10.255.0.5:0 Masq 1 0 0 + + + -> 10.255.0.7:0 Masq 1 0 0 + + + -> 10.255.0.8:0 Masq 1 0 0 + + + Here each of 10.255.0.x represents IP address of of container instance backending the service. + + + +## Service Traffic Flow + +This section describes traffic flow of request and reply to/from a service with publishedPort = 30000, targetPort = 80 + + + +1. Request arrives at eth0 in host NS, with dstIP=172.31.2.1, dstPort=30000, srcIP=CLIENT_IP, srcPort=CLIENT_PORT. Before routing, It first goes through NAT rule in service setup (6) that dnats request with dstIP=172.18.0.2; It then go through FORWARD rule in service setup (5) during routing that allows request with dstPort=30000 to go through. The routing then forward request to docker_gwbridge, and in turn ... +2. The request arrives at eth1 in ingress_sbox NS with dstIP=172.18.0.2, dstPort=30000, srcIP=CLIENT_IP, srcPort=CLIENT_PORT. Before routing, the request is marked before by mangle iptable rule in service setup (7). After routing, it is snated with eth1?s IP 10.255.0.2, forwarded to ipvs for LB by nat iptable rule in service setup (8). The ipvs policy in setup (9) picks one container instance of the service, in this example 10.255.0.5 and dnats it. +3. The request arrives at br0 in ingress NS with dstIP=10.255.0.5, dstPort=30000, srcIP=10.255.0.2, srcPort=EPHEMERAL_PORT. For simplicity, we assume the container instance 10.255.0,5 is the local host, therefore simply forwards it. Note since br0 spans across all hosts in the cluster via vxlan, with all services instances latching onto it, so whether to pick remote or local container instance, it does not change the routing policy configuration. +4. The request arrives at eth0 of container NS with dstIP=10.255.0.5, dstPort=30000, srcIP=10.255.0.x (eth1 IP in ingress_sbox NS), srcPort=EMPHEMERAL_PORT. Before routing, it?s dstPort is changed to 80 via nat rule in service setup (3), and is allowed to be forwarded to local process by INPUT rule in service setup (2) post routig. The process listening on tcp:80 receives request with dstIP=10.255.0.5, dstPort=80, srcIP=10.255.0.2, , srcPort=EPHEMERAL_PORT. +5. The process replies, The reply has dstIP=10.255.0.2, dstPort=EPHEMERAL_PORT, srcIp=not_known, srcPort=80. It goes through filter rule in OUTPUT chain in service setup(2), which allows it to pass. It goes through routing that determines outbound interface is eth1, and srcIP=10.255.0.5; and it ?un-dnats? srcPort=80 to 30000 via nat table rule in service setup (3). +6. The reply arrives at br0 in ingress NS with dstIP=10.255.0.2, dstPort=EPHEMERAL_PORT, srcIP=10.255.0.5, srcPort=30000, which duly forwarded it to ... +7. The eh0 interface in sb_ingress NS. The reply first go through ipvs LB that ?un-dnats? srcIP from 10.255.0.5 to 172.18.0.2; then ?un-snats? via nat rule in service setup (8) dstIP from 10.255.0.2 to CLIENT_IP, dstPort from EMPHERAL_PORT to CLIENT_PORT. +8. The reply arrives at docker_gwbridge0 interface of host NS with dstIP=CLIENT_IP, dstPort=CLIENT_PORT, srcIP=172.18.0.2, srcPort=30000. The reply ?un-snats? with nat rule in service setup(6) with srcIP changes to 172.31.2.1. And is then forwarded out of eth0 interface, and complete the traffic flow. From external view, request enters host with dstIP=172.31.2.1, dstPort=30000, srcIP=CLIENT_IP, srcPort=CLIENT_PORT; and reply exits with dstIP=CLIENT_IP, dstPort=CLIENT_PORT, srcIP=172.31.2.1, srcPort=30000. + + +## Other Flows + +**Northbound traffic originated from a container instance, for example, ping [www.cnn.com](www.cnn.com):** + +The traffic flow is exactly the same as in bridge mode, except it is via docker_gwbridge in host NS, and traffic is masqueraded with nat rule in initial setup (2). + +**DNS traffic** + +DNS lookup traffic is routed to docker engine from container instance for service discovery, filling the blank. + + +# Other IPTable Chain and Rules + +Other iptable chains and rules created and/or managed by docker engine/libnetwork. + +**DOCKER-USER**: inserted as the first rule to FORWARD chain of filter iptable in host NS. So that user can independently managed traffic that may or may not be related docker containers. + +**DOCKER-ISOLATION-STAGE-1** / 2: Filling in the blank + + + +