我们知道,在OSI或TCP模型中,高层利用下层提供的服务。例如,数据链路层使用物理层提供的服务,网络层使用数据链路层提供的服务等等。
但是,我发现有些协议在上面的层中使用协议提供的服务。例如,BGP和RIP都执行路由,这通常被认为是网络层功能。BGP使用TCP,而RIP使用UDP。在这里,网络层的协议使用传输层协议中的服务。这就是为什么一些在线的人认为BGP和RIP至少应该在传输层相关联,而有些人则说这些是应用层协议,因为它们使用传输层的服务,而在传输层之上的TCP-IP模型中只有应用层。
我理解BGP和RIP都主要执行路由的网络层功能。事实/惯例是什么?
发布于 2015-11-09 21:21:52
你必须记住,像OSI这样的模型就是这样的,模型。它们都是理论性的。现实世界并不是一帆风顺地落入这些模型中。在大多数情况下,路由是一种第三层功能,但正如您所指出的,BGP使用第4层协议与其他BGP扬声器进行通信,以便执行通常被认为是第3层功能的功能。
许多网络协议落入灰色区域,或者在使用另一层时被考虑在一个层中。以ARP为例。它解析层-3地址到层-2地址.它应该被认为在哪一层?
理解模型是有用的,但是模型不是任何组织强制要求的,您可以自由地创建不遵循任何模型的协议和函数。
发布于 2015-11-09 23:38:20
BGP位于TCP之上,因此它将是Internet第4层,OSI第7层。通常外部BGP只在两个直接连接的对等点之间执行,通过在位于第三层的IP报头上设置TTL标志来执行。
https://networkengineering.stackexchange.com/questions/24255
复制相似问题