V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
amiwrong123
V2EX  ›  程序员

计网自顶向下 BGP 协议 路由选择策略的疑问

  •  
  •   amiwrong123 · 2021-11-06 12:14:34 +08:00 · 2507 次点击
    这是一个创建于 1139 天前的主题,其中的信息可能已经有所发展或是发生改变。

    只是一个小问题哈,也许大家觉得这根本不重要。

    这句话:“任何穿越某 ISP 主干网的流量必须是其源或目的位于该 ISP 的某个客户网络中; 否则这些流量将会免费搭车经过该 ISP 的网络.”

    我看了半天,还是没有理解这句话的意思(刚好英文 pdf 没有这一页,我看不到原文)。我就掰开了问吧: 假如 B 的客户有 X ,C 的客户有 X 、Y.

    然后:

    • 来自 Y 的流量到达了 B 这个 ISP ,那么 B 就收费吗?(因为本不是它的客户)
    • 来自 X 的流量到达了 B 这个 ISP ,那么 B 就不收费吗?(因为已经收过费了)
    23 条回复    2021-11-09 19:51:29 +08:00
    defunct9
        1
    defunct9  
       2021-11-06 12:20:03 +08:00 via iPhone
    过桥流量。
    Tianao
        2
    Tianao  
       2021-11-06 12:55:59 +08:00   ❤️ 2
    对等互联不收费,传输(搭车)就收费。

    来自 Y 的流量到达了 B 这个 ISP ,那么 B 就收费吗?(因为本不是它的客户)
    B 不可能向 Y 收费,但可能向 C 收费。以中国大陆的三大主要 ISP 为例:如果 B 是电信 C 是联通,那么 B 电信通常不会向 C 联通收费(这叫对等互联);如果 B 是电信 C 是移动,那么 B 电信通常会向 C 移动收费(这在技术上也叫对等互联,但其实是一种非对等的 BGP 互联并会产生网间结算,因此在商业上称为付费互联,技术上没有“非对等互联”这个概念)。

    来自 X 的流量到达了 B 这个 ISP ,那么 B 就不收费吗?(因为已经收过费了)
    这取决于流量的源 IP ,是属于 C 还是属于 X 还是属于 B 。
    如果流量的源 IP 属于 C (比如 X 使用自己向 C 租赁的 IP 地址借助 B 的网络传输对外提供服务),这种行为称为 BGP 传输(搭车),通常 B 不会允许源自 C 的流量通过 X 免费搭车;如果流量的源 IP 属于 X (比如 X 是阿里云,B 是中国电信),这种行为也称为 BGP 传输,X 通常要为此向 B 付费;如果流量的源 IP 属于 B ,X 就是最典型的中小型公司 /中小型数据中心,X 向 B 租赁 IP 地址并购买互联网接入服务(俗称上网费 /宽带费 /专线费)。
    amiwrong123
        3
    amiwrong123  
    OP
       2021-11-06 13:47:24 +08:00
    @Tianao #2
    首先非常谢谢回答。然后我再问几个小问题哈

    >B 不可能向 Y 收费,但可能向 C 收费。
    因为 B 本来也没有 Y 这个客户呗。打个不恰当的比喻,就好比 演唱会门票卖给了黄牛,收黄牛的钱;黄牛把票卖给了我,收我的钱。

    >来自 X 的流量到达了 B 这个 ISP ,那么 B 就不收费吗?
    >如果流量的源 IP 属于 B ,X 就是最典型的中小型公司 /中小型数据中心
    你看这是 源 IP 属于 B ,且是来自 X 的流量, 那就是分组流向就是 B=>X=>B ,我可能是学艺不精,但这个奇怪的流向我不太理解,一个分组会可能这么绕回来吗?
    Tianao
        4
    Tianao  
       2021-11-06 13:58:35 +08:00 via iPhone   ❤️ 1
    @amiwrong123 #3 IP 归属与物理位置无关,比如你家 PPPoE 拨号上网拨到了一个公网 IP ,这个 IP 就是属于你家宽带 SP (比如中国电信)的,并不属于你个人。上文中的“源 IP 属于 B”等情况,都是在“来自 X 的流量到达了 B 这个 ISP”这一大前提下,所以“源 IP 属于 B ,且是来自 X 的流量”就是 X 发出的,发出时使用了 X 向 B 租赁的 IP 地址作为 IP 分组的源地址。
    amiwrong123
        5
    amiwrong123  
    OP
       2021-11-06 14:19:02 +08:00
    @Tianao #4

    >IP 归属与物理位置无关

    我理解一下这句话哈。假如我可以任意操控一个分组的 IP 协议的头部:

    我可以让 IP 协议头部的源 ip 为 B 的 IP ,那么我可能是从 B 手里租了一个 IP 。
    我也可以让 IP 协议头部的源 ip 为 C 的 IP ,那么我可能是从 C 手里租了一个 IP 。
    Tianao
        6
    Tianao  
       2021-11-06 14:32:28 +08:00 via iPhone   ❤️ 1
    @amiwrong123 #5 是的,事实如此。其实如果你找三大 ISP 办个最便宜的静态地址,这个地址就是运营商分配给你后,由你自己直接手工配置到你这一侧路由器(物理位置位于 X 内部)与运营商的互联接口上的。
    1423
        7
    1423  
       2021-11-06 16:34:04 +08:00
    国内也有,很久之前就整治过。不过按互联网的道理,穿越与否都是商业关系,不应该有其他因素控制

    https://tech.qq.com/a/20101105/000397.htm
    amiwrong123
        8
    amiwrong123  
    OP
       2021-11-06 17:04:36 +08:00
    @1423 #7
    看了。就是说,电信作为 ISP ,不允许其他 ISP 间接获得 电信的宽带服务。
    但我看就是因为,电信对其他 ISP 的直接收费太贵了,才导致的。不然其他 ISP 也可以直接找电信 要服务呗。
    voirnox
        9
    voirnox  
       2021-11-06 19:22:57 +08:00   ❤️ 2
    其实道理很简单,假如一个包从 A 网络进入 B 网络,分两种情况

    1 、假如目标就在 B 网络内,那么 B 不应对其收费,因为本来这个包就迟早要进入 B 的网络

    2 、假如目标不在 B 网络内,那么 B 需要消耗资源来转发这个包,收费是理所应当的

    不过这些都是商业模式上的问题,背后的网络技术实际上完全一致,都是 BGP 。此外现实世界里也有情况 1 但还收费的(比如,一个终端运营商依靠自己的垄断地位向内容运营商收费,如果不付费那么高峰期网速就会很慢)。

    英文关键词:transit 和 peering
    TomChaai
        10
    TomChaai  
       2021-11-07 02:00:33 +08:00   ❤️ 1
    BGP 这方面不是技术问题,更多是商业问题。
    除了国家级或者国际骨干运营商,一般运营商会避免别的 AS 穿透自己到达其他 AS 的情况发生,除非他们其中一个或者两个给钱。
    此山是我开,此树是我栽,要想从此过,留下买路财。古时候就有的道理。
    关于计费,你见过收过路费的时候问车里装的东西从哪儿来到哪儿去的吗?这不是路政该管的事,让海关安监或者警察管去。
    所以运营商和别家的骨干网互联,一般只在边境的线路上收带宽或者流量费,不管这些流量来龙去脉。
    TomChaai
        11
    TomChaai  
       2021-11-07 02:12:28 +08:00
    @amiwrong123 如果你向互联网主管机构申请自己的 AS 号和 IP 前缀,那么你就不需要向运营商租 IP ,你自己去找运营商买根 IPT 线路,然后和运营商洽谈你的 IP 前缀路由信息该怎么广播到整个互联网。
    非穿透的话,运营商只会广播到达你的 IP 前缀,可以走你发布给他们的路由,这样所有发到你这里的数据包,目的地都是访问你。
    穿透的话,运营商会向全网宣称,到达其他 AS ,也可以从你这个 AS 走,你就要承担发到你网上但目的地不是你的数据包的转发任务,对应转发到其他 AS 。
    amiwrong123
        12
    amiwrong123  
    OP
       2021-11-07 12:46:22 +08:00
    @TomChaai #10
    >一般运营商会避免别的 AS 穿透自己到达其他 AS 的情况发生
    既然要避免这个情况,那么这个运营商不去检查 这些分组的源 ip 和目的 ip 又怎么会知道是 穿透自己而到达别的 AS 的呢?(还是我理解错了吗😂,是你说的“你见过收过路费的时候问车里装的东西从哪儿来到哪儿去的吗”)

    看楼上两个老哥的回复的意思,好像都是要检测分组的 IP 地址的呀。
    amiwrong123
        13
    amiwrong123  
    OP
       2021-11-07 12:50:10 +08:00
    @TomChaai #11
    >申请自己的 AS 号和 IP 前缀
    那这不就是 申请一堆 IP 地址给自己这个自治系统吗

    哈哈哈,谢谢老哥,又学到了
    TomChaai
        14
    TomChaai  
       2021-11-07 12:56:40 +08:00   ❤️ 1
    @amiwrong123
    不检测流量,发到我线路上的我一律按照流量收钱,或者按照线路带宽包月收钱,管你发什么。
    你可能是把流量和路由信息混淆了?路由信息需要和运营商洽谈的,流量发过来就算钱,反正发都发了,成本已经产生了。
    TomChaai
        15
    TomChaai  
       2021-11-07 12:59:25 +08:00   ❤️ 1
    @amiwrong123 和你说的不太一样,你说的申请应该是向运营商租用已经申请好的 IP ,你不需要管路由。
    我说的是问 IANA 、APNIC 、CNNIC 这种机构买 IP 段,这个 IP 段不属于任何运营商,产权是你自己的,你需要自己和运营商洽谈拉线到你的 AS 上,以及你的 AS 如何向全网广播你所属的 IP 段的路由信息。
    manfred4527
        16
    manfred4527  
       2021-11-07 22:12:24 +08:00
    运营商应该按接口卖钱吧,A 运营商的用户要访问 B 运营商的资源肯定得过中间的接口,A 运营商的用户一般不会从 B 运营商网络中间绕一圈出来再去 A 的资源。这个用 BGP AS path 之类的可以做路由优先级。
    KanVivii
        17
    KanVivii  
       2021-11-08 08:26:11 +08:00
    小小问一下

    就是类似的学习 BGP ASN IP TRANSIT PEER 这些网络方面的书或者网课视频有哪些推荐呀
    关于 ASN IP 之类的网上资料好少
    julyclyde
        18
    julyclyde  
       2021-11-08 13:33:05 +08:00
    @KanVivii 因为这些都是运营商或者大的网络企业才用得到的东西,一般人学了也是屠龙之技
    所以流传比较少
    defunct9
        19
    defunct9  
       2021-11-08 13:48:43 +08:00
    计网自顶向下,是什么东东
    KanVivii
        20
    KanVivii  
       2021-11-08 13:59:08 +08:00
    @julyclyde 有相关的书籍或者网课推荐嘛 实在搜不太到诶
    julyclyde
        21
    julyclyde  
       2021-11-08 14:37:08 +08:00
    @KanVivii CCIE 运营商,或者 CCIE 路由交换?
    dreamage
        22
    dreamage  
       2021-11-09 16:53:37 +08:00
    请问 LZ 这照片是什么书?
    amiwrong123
        23
    amiwrong123  
    OP
       2021-11-09 19:51:29 +08:00
    @defunct9 #19
    @dreamage #22
    计算机网络自顶向下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2939 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 14:23 · PVG 22:23 · LAX 06:23 · JFK 09:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.