# A Deep Reinforcement Learning Perspective on Internet Congestion Control

* Internet congestion control: one of the most fundamental and challenging problems in communication networks&#x20;
  * Determines what you get out of the internet&#x20;
    * At what rate data goes in&#x20;
  * Always running on every connection&#x20;
    * With no prior knowledge&#x20;
* Water pipe
  * How fast do we send the data?&#x20;
  * Too slow: harm performance&#x20;
  * Too fast: overflow the pipe&#x20;
* Internet CC&#x20;
  * Very limited information, massive agent churn, enormous, dynamic, complicated network&#x20;
  * CC revisited&#x20;
    * Default algorithm: transmission control algorithm (TCP)&#x20;
* Motivating deep RL&#x20;
  * CC protocol
    * Blackbox&#x20;
    * Locally-perceived history of feedback: loss rates, latency&#x20;
    * On the other end: next sending rate&#x20;
  * Hypothesis: this feedback contains information about patterns that can improve the choice of sending rates&#x20;
* RL formulation&#x20;
  * Goal: maximize the cumulative reward
  * Agent observe the state, new action in the environment, output a reward&#x20;
  * NN: agent, and simulator for the environment&#x20;
    * Observe state, based on locally-perceived feedback&#x20;
* Aurora&#x20;
  * Monitor interval: send ratio, latency ration, latency inflation&#x20;
    * Keep design choice: scale-free observations affect robustness&#x20;
  * 3-layer NN&#x20;
  * Rate change factor&#x20;
  * Training&#x20;
    * Very simple simulated network
    * Each episode chooses different link parameters
    * Entire training platform: PCC-RL&#x20;
  * Real-World testing setup&#x20;
    * Real packets in linux kernel network emulation&#x20;
    * Using inference only&#x20;
      * Allowing faster adaptation&#x20;
      * Still producing state-of-the-art results&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sliu583.gitbook.io/blog/specific-work/seminar-and-talk/reading-groups/network-reading-group/ml-and-networking/congestion-control/a-deep-reinforcement-learning-perspective-on-internet-congestion-control.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
