{"id":17072062,"url":"https://github.com/singgel/bgw","last_synced_at":"2026-01-04T23:04:17.933Z","repository":{"id":251303516,"uuid":"837009435","full_name":"singgel/bgw","owner":"singgel","description":"【京东云IaaS】- 混合边界网关，这个没有什么特别的，主要是分享些专线，vpn之类的企业网打通，边界网关的角色和高可用的设计想法","archived":false,"fork":false,"pushed_at":"2025-01-22T02:55:00.000Z","size":11573,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T03:28:33.507Z","etag":null,"topics":["bgp","dpdk","private-link"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/singgel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-02T02:59:26.000Z","updated_at":"2025-01-22T02:55:03.000Z","dependencies_parsed_at":"2024-08-02T04:32:49.701Z","dependency_job_id":"cde82ef6-9fd2-4655-bcfe-8ae8d96f9649","html_url":"https://github.com/singgel/bgw","commit_stats":null,"previous_names":["singgel/bgw"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singgel%2Fbgw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singgel%2Fbgw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singgel%2Fbgw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singgel%2Fbgw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/singgel","download_url":"https://codeload.github.com/singgel/bgw/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245097851,"owners_count":20560316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bgp","dpdk","private-link"],"created_at":"2024-10-14T11:38:28.187Z","updated_at":"2026-01-04T23:04:12.913Z","avatar_url":"https://github.com/singgel.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"## 边界网关\n[可编程网卡芯片在京东云网络的应用实践](./BGW_P4_Barefoot.md)\n### 基本概念\n\n边界网关(BGW，Border Gateway)，是京东云用来承载VPC南北向流量的一种网关，主要作用是与其他外部网关或环境进行内网互通。\n\n在边界网关支持创建VPC接口功能前，边界网关一旦创建、即自动与同地域的所有VPC连通。\n\n随着边界网关的VPC接口功能上线，新建的边界网关默认不与任何VPC连通，用户需要创建\"VPC接口”用于打通指定VPC和边界网关的互联；对于已经创建的边界网关，边界网关路由表内已有到VPC的路由仍然有效可用，但是不能新建到VPC的路由、除非先创建出与VPC关联的VPC接口。\n\n目前边界网关承载的业务是专线连接、托管连接、VPN连接、VPC接口功能。\n\n边界网关支持客户IDC和京东云VPC之间通信、京东云托管区和京东云VPC之间通信、京东云同地域多个VPC之间通信等。\n\n默认情况下，连接到同一边界网关的专线通道、托管通道、VPN连接之间无法通过边界网关进行通信。\n\n通过边界网关可访问的京东云资源：京东云VPC内的全部资源，包括云主机、容器、负载均衡、云数据库、云缓存等，但是不能利用VPC内NAT网关统一互联网出口。\n\n# VIP集群版本架构优势\n# BGW机器的变更需要给路由器下发配置，之前的BGW的机器替换耗时很久\n\n集群版本下，所有的节点都是等价的\n\n机器的添加和删除 不需要等待路由器\n\n优势：\n\n1.运维角度看节省时间和大量的人力\n\n2.稳定性的角度看，避免了人为介入的操作流程过多产生线上问题\n\n# 之前的BGW机器出现问题的时候，如果机器Crash或者出现问题，需要依赖探测摘除收敛\n\n集群版本下，所有的机器和上联交换机BGP连接宣告，靠BGP直接自动收敛\n\n优势：\n\n1.稳定性角度看，bgp的自动收敛时间短，故障恢复快\n\n2.架构角度看，靠bgp的方案不依赖过多的外部中间件，架构简单\n\n# BGW旧版没有多组互相灾备能力，同时没有异构的能力\n\n集群版本下，多个bgw集群之间可以相互宣告相同的vip，靠路由自动故障转移\n\n线上实现为硬件集群和软件集群之间异构相互宣告vip\n\n优势：\n\n1.稳定性角度看\n\na。异构的设计，可以避免硬件或者编程语言的问题\n\nb。大小vip的宣告，可以在单个集群故障时快速自动灾备\n\n2.架构角度看，直接大小段的vip宣告，不涉及其他模块开发和适配工作，架构简单","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinggel%2Fbgw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsinggel%2Fbgw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinggel%2Fbgw/lists"}