【问题标题】:Client sends messages through one series of ip and receivers answer through another series of ip, after the primary ip is made down and up客户端通过一系列ip发送消息,接收者通过另一系列ip应答,在主ip被设置为down和up之后
【发布时间】:2018-06-20 09:14:10
【问题描述】:

在 SCTP 多宿主的情况下,客户端通过一系列 ip 发送消息,接收者通过另一系列 ip 应答,在主 ip 被关闭和向上之后。

这里我配置了2条路径,主路径和次路径。最初,所有消息都将在主路径中传输。现在我正在关闭主接口,所有消息都将在辅助路径中传输。

一旦我建立了主接口,第一个事务就会通过主路径发送,而答案就会进入辅助路径。

这仅发生在接口组成后的第一个事务中。从第二个事务开始,所有消息都进入主路径,并在主路径本身中得到答案。

【问题讨论】:

    标签: networking sctp


    【解决方案1】:

    情况下的行为取决于几个因素,例如:

    • 实际确认的是什么 SACK 块。是否实际上是对已通过主路径接收的 DATA 的确认,或者是对先前已收到的某些内容的确认。
    • 无论是单个 SACK 还是与 DATA 块捆绑的 SACK。
    • 它是否确认通过一条路径或两条路径接收到的 DATA 块(例如,第一个数据包来自您的辅助路径,另一个来自主路径)。在第一种情况下,根据RFC 4960 chapter 6.4 SACK 应该通过主路径发送,在第二种情况下,行为可能会有所不同:

    端点应该发送回复块(例如,SACK、HEARTBEAT ACK、 等)到相同的目标传输地址,它从 接收到它正在回复的 DATA 或控制块。这 如果端点捆绑 DATA 块,也应遵循规则 连同回复块。

    但是,当确认在数据包中接收到多个 DATA 块时 来自单个 SACK 中的不同源地址,SACK 块可能 被传输到目标传输地址之一 收到确认的 DATA 或控制块。

    • 特定实现如何严格遵循 RFC。 RFC 定义 SACK 应该发送到与接收数据包的源地址相同的目标传输地址。严格来说,RFC 并没有定义应该使用什么源 IP 地址。例如。如果 DATA 块通过 IP1-IP2 路径进入 IP 数据包,根据 RFC 可以通过 IP3-IP1 ip 路径发送 SACK。

    【讨论】:

    • 感谢重播。
    • 事务在应用程序消息交换的意义下。不是消息和 SACK。
    猜你喜欢
    • 1970-01-01
    • 2016-05-12
    • 2013-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-10
    • 2015-07-31
    • 1970-01-01
    相关资源
    最近更新 更多