✍个人博客:Pandaconda-CSDN博客
📣专栏地址:http://t.csdnimg.cn/fYaBd
📚专栏简介:在这个专栏中,我将会分享 C++ 面试中常见的面试题给大家~
❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪
📝推荐参考地址:https://www.xiaolincoding.com/(这个大佬的专栏非常有用!)
13. 什么是端口?
在计算机网络中,端口是一种逻辑上的概念,用于标识不同的网络应用程序或服务。
端口是一个 16 位的整数,其取值范围是 0 到 65535。端口的作用是在一台计算机上区分不同的网络通信进程或服务。
可以把计算机比作一个大楼,IP 地址就像大楼的地址,而端口就像是大楼里不同房间的门牌号。当网络数据包到达计算机时,除了通过 IP 地址找到这台计算机,还需要通过端口号将数据包准确地交给对应的应用程序或服务进行处理。
端口分为两种类型:
- 知名端口(Well-Known Ports):范围是 0 到 1023,这些端口通常被分配给一些常见的、广泛使用的网络服务,例如 HTTP 服务通常使用 80 端口,FTP 服务使用 21 端口,SSH 服务使用 22 端口等。
- 注册端口(Registered Ports):范围是 1024 到 49151,这些端口通常被用于一些特定的应用程序或服务,但不是系统级的服务。
- 动态/私有端口(Dynamic/Private Ports):范围是 49152 到 65535,这些端口通常由客户端程序在发起连接时随机选择使用。
总之,端口使得计算机能够同时运行多个网络应用程序,并确保它们能够正确地接收和处理网络数据。
14. 路由转发协议有哪些?
自治系统(AS)内部的路由选择:
- OSPF 协议:LS 算法(基于迪杰斯特拉算法,是一种集中式路由选择算法),适合数量多的场景
- RIP 协议:DV 算法(基于贝尔曼弗洛伊德算法,是一种分散式路由选择算法),适合数量少的场景
自治系统间路由选择:
- BGP 协议
15. BGP 和 OSPF 协议的原理
- BGP 协议原理:
BGP 是一种自治系统之间的外部网关协议,用于在不同自治系统之间交换路由信息。BGP 协议使用 TCP 连接来传输路由信息,并使用路径向量算法来选择最佳路径。BGP 协议的工作原理可以简要概括如下:
- BGP 运行在自治系统之间的边界路由器上,通过与其他边界路由器建立 TCP 连接来交换路由信息。
- BGP 协议通过广播自己拥有的网络前缀信息,同时学习和接受其他自治系统传递的路由信息。
- BGP 使用路径向量算法来选择最佳路径,其中考虑了路由路径的 AS 路径长度、BGP 属性等因素。
- BGP 通过更新消息来传递路由信息,并使用保持、通知和连续的消息来维护与对等方之间的连接。
- OSPF 协议原理:
OSPF 是一种内部网关协议,用于在同一个自治系统内部交换路由信息。OSPF 协议使用链路状态算法来构建网络拓扑,并计算出最短路径。OSPF 协议的工作原理可以简要概括如下:
- OSPF 协议运行在同一个自治系统内的所有路由器上,通过互相交换链路状态信息来构建和维护网络的拓扑结构。
- OSPF 通过组播协议来传输链路状态信息,并基于这些信息计算出最短路径树。
- OSPF 使用 OSPF 专用的 Hello 消息来维护邻居关系,并使用 LSA(链路状态通告)消息来传递链路状态信息。
- OSPF 通过了解相邻路由器的链路状态信息,计算出路由表,并选择最佳路径。
总的来说,BGP 协议用于自治系统之间的路由信息交换,通过路径向量算法选择最佳路径;而 OSPF 协议用于自治系统内部的路由信息交换,通过链路状态算法计算最短路径。两者在不同层级和规模的网络中扮演着重要的角色。