摘要

  • ATM UNI 不能修改已建立 VC 的 QoS 参数;RFC 2380 因而要求旧电路继续工作,同时建立替代电路,完成后才能切流并拆旧。
  • 替换失败时,扩大预留必须报错,缩小预留却可视为成功并保留旧的较大分配,因此请求、答复、已装资源和实际服务是不同凭据。

电路没变,修改仍可成功

RSVP 允许随时改变预留,ATM UNI 3.x 与 4.0 却不能原地修改 VC 的 QoS。RFC 2380 选择“替换”而不是“改写”:新 VC 建立期间,旧 VC 必须原样保留;新电路成功后才移动流量,随后才能关闭旧电路。建立失败,就继续使用旧 VC。

当请求增加资源而替换失败时,旧电路无法满足新增部分,所以必须返回错误。请求减少资源时则不同:较大的旧电路已经能够满足较小需求,因此 RFC 要求把修改视为成功,即使物理分配并未缩小。它承认这样不够经济,却把不中断服务和 RSVP 错误语义置于账面整齐之前。

成功答复没有证明 ATM 已经释放容量。它只证明较小的服务承诺仍可兑现。运营记录必须同时保存“现在请求多少”和“现在实际占用多少”。

安静不等于释放

普通 IP-over-ATM 电路常因长时间无流量而被拆除,因为无连接 IP 没有明确结束信号。RSVP 自己拥有消息与超时来决定资源寿命,所以 RFC 2380 禁止以普通空闲计时器清除 RSVP 控制的 VC。发起端计时器应等同于无限,接收端也不能只因安静就拆掉连接。

流量观测没有释放权。数据面沉默是一项测量,RSVP 状态才是资源是否仍被授权的控制记录。

接收方请求,发送方建路

RSVP 的预留由接收方发起,ATM 的连接却由发送方控制。RFC 2380 要求子网发送方建立 QoS VC,子网接收方能够接受它。因此 RESV 是请求到达的证据,不是电路已经创建的凭据。

控制与数据也不能共用关联 QoS VC。控制可走 best-effort 或独立控制 VC。数据 VC 无法恢复时,应记为分配失败;控制 VC 无法恢复时,相关 QoS VC 必须释放,避免转发状态在预留状态失联后继续存活。

多播宁可短暂重复,也不制造缺口

点到多点迁移存在两难:同时使用新旧 VC 会重复,只用未完成的新 VC 会让尚未加入的接收方丢包。建立全新 QoS VC 时,所有成员加入前不得发送。把单个端点从 best-effort 移入已有 QoS VC 时,则必须先加入新路、再从旧路删除,允许短暂重复来避免空窗。

两条规则共同保护连续性,也要求记录成员完成度、切换时刻和重复窗口,而不是只留一个“VC 活跃”状态。

过渡期有多种真实

RFC 2380 的历史价值在于承认临时分歧:请求可以变小,答复可以成功,电路仍然较大,资源成本尚未下降,而服务完全不中断。只有分别保存这些事实,系统才能在过渡结束后真正对账。