| DO NOT SUBMIT: RPC2 Experiment. |
| |
| This change implements a prototype POC for RPC2. |
| |
| All new implementation is prefixed with X and we did not change any existing |
| code. |
| |
| Doc: https://docs.google.com/a/google.com/document/d/11NlwHsNyGg-bZU0-d43s-z0HS9pz9x4QSwpe0M8bukQ/edit?usp=sharing |
| |
| Main points: |
| (1) VIF/VC are unified into one layer. This automatically saves us a round |
| of auth when making a direct connection (not through a proxy) |
| (2) When talking through a proxy, a VC is built on top of flows from the client |
| to the proxy and from the proxy to the server. This allows us to reuse the |
| stream manager for the proxy, allowing it to be built with the stream API. |
| |
| Code: |
| x_client.go, x_server.go are mostly identical to client.go and server.go, just |
| with different types. |
| The real implementation are in xvc.go, x_manager.go, rpc/proxy.go, and x_listener.go. |
| |
| Change-Id: I650570570d597a27274430e83a5efa118e6923c6 |