linkerd / linkerd/website

Docs issue: TCP load balancing description

Open
#375 4 comments 0 reactions 1 assignee Claimed by @cpretzer View on GitHub
docs
Dominant language
JavaScript
Stars
60
Forks
221
Avg merge
4h 32m
Merged PRs (30d)
1

Description

## Bug Report

### What is the issue?
The docs regarding TCP load balancing appear to be incorrect.

The docs in question are here: https://linkerd.io/2/features/load-balancing/, and seem to say that Linkerd does TCP load balancing (`For TCP connections, Linkerd will balance connections`). However, that is rather misleading.

As I understand it, if you are issuing TCP connections to a remote entity using some binary protocol (such as HTTPS encrypted by the client, but any binary protocol works here), Linkerd cannot do anything to figure out the destination. Hence it just proxies the request without doing load balancing. For some protocols that linkerd2 can understand, I *think* Linkerd does do connection level TCP load balancing (HTTP/1.0, but maybe others).

The docs should be corrected to make the behaviour clear.

Note that Istio has different behaviour here - it looks up the IP that the connection is going to, and uses that to pick the Kubernetes service with that cluster IP to let it do load balancing. This difference is confusing unless precisely documented because people may be familiar with the Istio behaviour (which has pros and cons - not arguing for a change to behaviour in this issue).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.