> For the complete documentation index, see [llms.txt](https://docs.console.zenlayer.com/welcome/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.console.zenlayer.com/welcome/cn/elastic-compute/networking/01-overview/09-eip-line-split.md).

# EIP 线路分离

## 简介

在世界上某些地区——东南亚（胡志明市、雅加达）、部分拉丁美洲、中东，以及任何本地互联经济与国际费率差距显著的地方——**国际中转费用远高于国内中转费用**。对从未离开本国的流量支付国际费率是一种浪费。EIP 线路分离功能允许一个 EIP 在**一个公网地址**上同时服务两种流量，通过您选择的百分比将 EIP 的 Mbps 配额在两条线路之间分配。

一个 EIP 在外部世界看来是一个 IPv4（或 IPv6）地址。平台内部变化的是 EIP 容量的划分方式：

* **国内线路** — 当目的地与 POP 位于同一国家时使用。
* **国际线路** — 用于所有其他目的地。

您决定 EIP 带宽中各线路分配的比例。流量根据目的地自动分配到相应线路，无需设置逐目的地规则。

![EIP 线路分离 — Hyperplane 对国内与国际流量的分类](/files/RO0453c1LQEpyPuCee01)

***

## 为什么这是按 POP 实现的功能

并非每个区域都需要此功能。在国内和国际中转成本相同的地点，无需分离——一个上限覆盖一条线路即可。该功能专为国内与国际价格差距足够大的 POP 设计，否则将两者混合到一个计量器中会迫使您：

* 多付钱（将整个 EIP 按国际带宽定规格），或
* 规格不足（设置较小的国际配额，并寄希望于国内需求不会拉高账单）。

线路分离为您提供了调节旋钮，使带宽采购与流量结构相匹配。

**目前适用此功能的 POP 示例：**

* **胡志明市（越南）。** 越南国内流量明显低于国际流量价格。
* **雅加达（印度尼西亚）。** 同样的模式。

东南亚、拉丁美洲、中东及其他本地互联费用明显低于国际中转的 POP，均采用相同模式。Console 仅在支持该功能的 POP 上显示此选项。

***

## 分离比例的配置方式

对于支持线路分离的 EIP，您配置两个数值：

* **总带宽（Mbps）** — 与非分离 EIP 选择的数值相同。
* **按百分比分离** — 例如，80% 国内，20% 国际。

平台根据该百分比计算每条线路的上限。以 100 Mbps EIP 的 80/20 为例：

* 国内线路：最高 80 Mbps。
* 国际线路：最高 20 Mbps。

每条线路有各自的限速器。达到国内上限不会占用国际的空间，反之亦然——两条线路不互相借用带宽。即使国际线路空闲，被国内上限截断的国内流量也会被丢弃。

分离以百分比而非两个绝对 Mbps 值表示，这样调整 EIP 规格时可保持比例不变。如果您将 100 Mbps EIP 提升到 200 Mbps，80/20 的分离比例将自动变为 160 / 40。

***

## 流量如何分配到各线路

分类在数据面进行。每个数据包的目的地址与 POP 的**国内前缀集**（该 POP 公告为国内地址范围的地址段）进行匹配。匹配的走国内线路，其余全部走国际线路。

需注意三点后果：

* **分类以数据包为单位，而非以流为单位。** 同时涉及国内和国际端点的单个会话会被正确分流。
* **国内前缀集由平台维护**，而非由您维护。它反映了本地互联实际覆盖的范围，因此"国内"的定义取决于 POP 的国内上游在不触发国际中转的情况下所接受的地址范围。
* **两条线路之间没有回退机制。** 如果国内线路满载而国际线路空闲，国内流量仍会被限速——成本模型只有在每条线路保持在各自配额内才有效。

***

## 可观测性 — 哪条线路被限速

当前已上线的功能与仍在规划中的功能值得明确说明：

* **总丢包计数器（已上线）。** 来自[带宽上限](/welcome/cn/elastic-compute/networking/01-overview/07-bandwidth-cap.md)的按 EIP `dropped` 计数器——`ingress/egress_dropped_packets` 和 `ingress/egress_dropped_bytes`——目前已可用。它们告诉您 EIP *确实*达到了上限以及截断了多少，但**不按线路拆分**。
* **按线路拆分的丢包计数器（即将推出）。** 将相同的 `dropped` 计数器按线路（国内与国际）拆分，以便判断*哪条*线路饱和，正在规划中。在此功能上线之前，线路分离 EIP 上 `dropped` 值上升只能告诉您整个 EIP 正在被限速，无法判断是哪条线路导致的。
* **按线路带宽限速 / 整形（即将推出）。** 对每条线路在各自 Mbps 上限上独立整形也在规划中。**目前生产环境仅按线路单独统计流量（字节）**——这使得流量计费可以对国内 GB 和国际 GB 分别计价。Mbps 级别的整形目前仍在 EIP 整体层面进行，而非按线路进行。

换句话说，当前生产状态为：**EIP 上一个限速器，两个字节计数器**（每条线路一个）用于计费。按线路限速和按线路丢包计数器是下一阶段迭代。

按线路丢包计数器上线后，典型的诊断流程将为：

1. EIP 总流量看起来被限速——`dropped` 持续上升。
2. 按线路查询该计数器。
3. 如果只有国际线路在丢包，说明国际线路分配的比例对于当前流量结构而言过小。提高国际百分比或总带宽。
4. 如果两条线路都在丢包，说明 EIP 本身规格不足。

***

## 与计费方式的关系

线路分离是一个**容量**调节旋钮，而非计费方式。它不替代本指南中的任何计费方式，而是与之并列存在：

* 在**包月带宽**下，它将带宽上限在两条线路之间分配。
* 在**流量计费**下，仍按字节计费，但每 GB 价格因线路而异：国内 GB 按较低的国内费率计价，国际 GB 按国际费率计价。分离百分比仅限制每条线路的吞吐量；实际费用跟踪每条线路实际传输的字节数。
* 在**聚合 95 计费**下，每条线路分别贡献各自的 95th percentile，各有各的承诺量和超额费率。

在每种情况下，两条线路都单独计量，账单反映每侧的真实用量。

***

## 当前状态

目前在支持线路分离的 POP 上已上线的功能：

* **Hyperplane 上的逐数据包路由分类。** 流量根据目的地与平台维护的国内前缀集进行匹配，分类为国内或国际。
* **按线路流量统计（字节）。** 两条线路分别计量，使流量计费能够对国内 GB 和国际 GB 分别按不同费率计费。

仍在推进中的功能：

* **按线路带宽限速（Mbps 整形）。** 目前整形在 EIP 层面应用；每条线路尚不具备各自独立的 Mbps 上限。
* **按线路丢包计数器。** `dropped` 计数器目前在 EIP 层面存在，尚未按线路拆分。
* **在每个 POP 上设置分离百分比的 Console / API 入口** — 仅在功能完全投产的 POP 的 EIP 创建表单上开放。

在尚未启用线路分离的 POP 上，EIP 表现为单条未分离线路。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.console.zenlayer.com/welcome/cn/elastic-compute/networking/01-overview/09-eip-line-split.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
