SI: Service Identifier (服务ID)
类型:1个字节的无符号整数值
范围:0x00~0xFF
Service identifier (SI) | Service type (bit 6) | Where defined |
---|---|---|
0x10 – 0x3E | ISO 14229-1 service requests | ISO 14229-1 |
0x3F | Not applicable | Reserved by document |
0x50 – 0x7E | ISO 14229-1 positive service responses | ISO 14229-1 |
0x7F | Negative response service identifier | ISO 14229-1 |
0x80 – 0x82 | Not applicable | Reserved by ISO 14229-1 |
0x83 – 0x88 | ISO 14229-1 service requests | ISO 14229-1 |
0x89 – 0xB9 | Not applicable | Reserved by ISO 14229-1 |
0xBA – 0xBE | Service requests | Defined by system supplier |
0xBF – 0xC2 | Not applicable | Reserved by ISO 14229-1 |
0xC3 – 0xC8 | ISO 14229-1 positive service responses | ISO 14229-1 |
0xC9 – 0xF9 | Not applicable | Reserved by ISO 14229-1 |
0xFA – 0xFE | Positive service responses | Defined by system supplier |
0xFF | Not applicable | Reserved by document |
注意:
- 请求消息的服务标识符和正响应消息的服务标识符之间存在一一对应关系,其中SI字节值的第6位(bit6)表示服务类型(service type)。
- 所有请求消息的服务类型的第六位等于0。
- 除了周期数据响应消息(ReadDataByPeriodicIdentifier (0x2A, see 10.5) ),所有积极响应(positive response)消息的服务类型的第六位等于1。
- 消极响应服务ID,NR_SI, Negative response service identifier是一个固定值0x7F,注意:为了应用层数据编码和解码更方便,这个ID(0x7F)并没有用作一个SI值(怎么理解?)。
- SI应被用于对服务原语中已被调用的特定服务进行编码。 每个请求服务应分配一个唯一的SI值。 每个积极响应服务应分配一个相应的唯一SI值。
- SI用于代表从应用层传输到更底层中的应用数据字符串中的服务。