BGP 用于在不同的自治系统(AS)之间交换路由信息。当两个 AS 需要交换路由信息时,每个 AS 都必须指定一个运行 BGP 的节点,来代表 AS 与其他的 AS 交换路由信息。这个节点可以是一个主机。但通常是路由器来执行 BGP。两个 AS 中利用 BGP 交换信息的路由器也被称为边界网关(Border Gateway)或边界路由器(Border Router)。
由于可能与不同的 AS 相连,在一个 AS 内部可能存在多个运行 BGP 的边界路由器。同一个自治系统(AS)中的两个或多个对等实体之间运行的 BGP 被称为 IBGP(Internal/Interior BGP)。归属不同的 AS 的对等实体之间运行的 BGP 称为 EBGP (External/Exterior BGP)。在 AS 边界上与其他 AS 交换信息的路由器被称作边界路由器(border/edge router)。在互联网操作系统(Cisco IOS)中,IBGP 通告的路由的距离为 200,优先级比 EBGP 和任何内部网关协议(IGP)通告的路由都低。其他的路由器实现中,优先级顺序也是 EBGP 高于 IGP,而 IGP 又高于 IBGP。
BGP 属于外部网关路由协议,可以实现自治系统间无环路的域间路由。BGP 是沟通 Internet 广域网的主用路由协议,例如不同省份、不同国家之间的路由大多要依靠 BGP 协议。BGP 可分为 IBGP(Internal BGP)和 EBGP(External BGP)。BGP 的邻居关系(或称通信对端/对等实体)是通过人工配置实现的,对等实体之间通过 TCP(端口 179)会话交互数据。BGP 路由器会周期地发送 19 字节的保持存活 keep-alive 消息来维护连接(默认周期为 30 秒)。在路由协议中,只有 BGP 使用 TCP 作为传输层协议。