rfc 草案的写作对特性要求的等级描述有几个关键词,分别是:
"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", "OPTIONAL"
可以分成几组:
(1)MUST,REQUIRED,SHALL
表示必须实现
(2)MUST NOT, SHALL NOT
表示禁止
(3)SHOULD,RECOMMENDED
特殊的情况下可以忽略,但是整体的描述和逻辑是可被理解的。使用这个词时请三思。
(4)SHOULD NOT,NOT RECOMMENDED
和前面一个相反,在特殊的情况下可以存在。但是整体的描述和逻辑是可被理解的。使用这个词时请三思。
(5)MAY,OPTIONAL
厂商可能因为市场等原因选择实现某个特征,但是其他的厂商可能选择省略。所以必须考虑互通性问题。
当使用必须这样的限制词是应该小心和保守。比如MUST这样的词只适用于互通性和限制某些引起潜在危险的行为。比如重传。
这些术语经常用来限制一些有安全暗示的行为。不用MUST或SHOULTD限制的行为,或者用MUST NOT或SHOULD NOT限制的行为,他们之间的区别是很大的。所以文档的作者必须花时间去精确没有被推荐术语或要求术语所限制的安全暗示,因为多数实现者将不会有写作这个文档的经验,也不会参与讨论。