所以首先,以太网是否发送 ack 帧?
如果没有:那么路由器如何知道其邻居是否已关闭?
如果确实如此:那么它是带有 ack 计时器的累积 ack 还是每个接收帧一个 ack?
我问这个是因为在链接状态算法中我在某处读到黑洞问题是由路由器解决的,因为它最终会意识到它的邻居已经关闭,但它如何知道是否没有 ack 帧?
所以首先,以太网是否发送 ack 帧?
如果没有:那么路由器如何知道其邻居是否已关闭?
如果确实如此:那么它是带有 ack 计时器的累积 ack 还是每个接收帧一个 ack?
我问这个是因为在链接状态算法中我在某处读到黑洞问题是由路由器解决的,因为它最终会意识到它的邻居已经关闭,但它如何知道是否没有 ack 帧?
不,以太网是无连接的,IP 也是如此,如果您使用 UDP,应用程序将需要执行任何与连接相关的握手(如果需要)。通常,建立连接是传输或应用协议(例如 TCP)的责任。
路由器如何知道其邻居是否已关闭?
有时(静态配置的路由),路由器不知道邻居是否关闭。如果路由器共享一个路由协议,则由路由协议(在传输层或应用层)来确定邻居是否关闭。
它是带有 ack 计时器的累积 ack 还是每个接收帧一个 ack?
不,以太网不知道帧是否丢失或丢失。没有 ACK,因为没有建立连接。以太网会默默地丢弃损坏或多余的帧。注意到数据丢失是上层协议或应用程序的工作。