anchor.diff:  
   ## <a id="tls"></a>SSL/TLS Termination ##
   
  -Depending on your needs, you can configure your deployment to terminate SSL/TLS at the CF router, at the CF router and the load balancer, or at the load balancer only. <%= vars.http_routing %>
  +Depending on your needs, you can configure your deployment to terminate SSL/TLS at the Gorouter, at the Gorouter and the load balancer, or at the load balancer only. <%= vars.http_routing %>
   
   ## <a id="transparent"></a>Transparent Retries ##
   
  -If the CF router cannot establish a TCP connection with a selected application instance, the router considers the instance ineligible for requests for 30 seconds, and the router transparently attempts to connect to another application instance. Once the router has established a TCP connection with an application instance, the router forwards the HTTP request.
  +If the Gorouter cannot establish a TCP connection with a selected application instance, the router considers the instance ineligible for requests for 30 seconds, and the router transparently attempts to connect to another application instance. Once the router has established a TCP connection with an application instance, the router forwards the HTTP request.
   
   See the <a href="#round-robin">Round-Robin Load Balancing</a> section below for more information about how the router forwards requests to application instances.
   
   ## <a id="round-robin"></a>Round-Robin Load Balancing ##
   
  -The CF router uses the round-robin algorithm for load balancing incoming requests to application instances. The router maintains a dynamically updated list of application instances for each route, and forwards each request for a given route to the next application instance in the list.
  +The Gorouter uses the round-robin algorithm for load balancing incoming requests to application instances. The router maintains a dynamically updated list of application instances for each route, and forwards each request for a given route to the next application instance in the list.
   
   ## <a id="sockets"></a>sockets ##
   
  -WebSockets is a protocol providing bi-directional communication over a single, long-lived TCP connection, commonly implemented by web clients and servers. WebSockets are initiated through HTTP as an upgrade request. The CF Router supports this upgrade handshake, and will hold the TCP connection open with the selected application instance. <%= vars.port_limitations_1 %>
  +WebSockets is a protocol providing bi-directional communication over a single, long-lived TCP connection, commonly implemented by web clients and servers. WebSockets are initiated through HTTP as an upgrade request. The Gorouter supports this upgrade handshake, and will hold the TCP connection open with the selected application instance. <%= vars.port_limitations_1 %>
   
   ## <a id="keepalive"></a>Idle Keepalive Connections ##
   
  -When an operator has chosen to disable support for Keepalive Connections, the CF Router will close the TCP connection to an app instance or system component after sending a single HTTP request. When Keepalive Connections is enabled the router will maintain established connections, with a configurable maximum that limits the number of total idle connections from each router. The router will reuse idle connections for routing of subsequent requests if one exists for the selected backend, lowering latency and increasing throughput. If no idle connection exists, a new connection will be established, and if the router limit has not been reached that connection will be maintained. The number of idle connections from each router to an individual backend is limited to 100. <% if vars.product_name == 'CF' || vars.product_name == 'PCF' %> <%= vars.keepalive %> <% else %> <% end %>+When an operator has chosen to disable support for Keepalive Connections, the Gorouter will close the TCP connection to an app instance or system component after sending a single HTTP request. When Keepalive Connections is enabled the router will maintain established connections, with a configurable maximum that limits the number of total idle connections from each router. The router will reuse idle connections for routing of subsequent requests if one exists for the selected backend, lowering latency and increasing throughput. If no idle connection exists, a new connection will be established, and if the router limit has not been reached that connection will be maintained. The number of idle connections from each router to an individual backend is limited to 100. <% if vars.product_name == 'CF' || vars.product_name == 'PCF' %> <%= vars.keepalive %> <% else %> <% end %>
positive.code: 
  ## <a id="http-headers"></a>HTTP Headers ##
  
  HTTP traffic passed from the CF router to an app includes the following HTTP headers:
  
  * `X-Forwarded-Proto` gives the scheme of the HTTP request from the client. The scheme is HTTP if the client made an insecure request or HTTPS if the client made a secure request. Developers can configure their apps to reject insecure requests by inspecting the HTTP headers of incoming traffic and rejecting traffic that includes `X-Forwarded-Proto` with the scheme of HTTP.
  
  * `X-Forwarded-For` gives the IP address of the client originating the request.
  
  If your load balancer terminates TLS upstream from the CF router, it must append these headers to requests forwarded to the CF router. <%= vars.http_routing %>
  
  ### <a id="zipkin-headers"></a> Zipkin Tracing in HTTP Headers
  
  
negative.code: 
  <strong><%= modified_date %></strong>
  
  This topic describes features of HTTP routing handled by the Cloud Foundry (CF) [router](./architecture/#routing), also known as the _Gorouter_.
  
  ## <a id="sessions"></a>Session Affinity ##
  
  The Gorouter supports session affinity, or _sticky sessions_, for incoming HTTP requests to compatible apps.
  
  With sticky sessions, when multiple instances of an app are running on CF, requests from a particular client always reach the same app instance. This allows apps to store session data specific to a user session.
  
  