Sd产品参考手册
缩写词注解
缩写词 |
英文全称 |
中文解释 |
SD |
Service Discovery |
服务发现 |
Sd |
Service Discovery Module in AUTOSAR |
AUTOSAR服务发现模块 |
SOME/IP |
Scalable service-Oriented MiddlwarE over IP |
基于 IP的可缩放的面向服务中间件 |
SOME/IP-SD |
SOME/IP Service Discovery |
SOMEIP服务发现 |
简介
Service Discovery模块,即服务发现模块,主要用于:
探测外部是否有可用的服务,定位服务位置。
向外部提供可用的服务。
实现发布/订阅机制,以控制Event报文的订阅和发布。
Sd模块位于SoAd和BswM模块之间,和上述两个模块协作完成服务发现的功能。
图1-1 Sd模块位置
参考资料
[1] AUTOSAR_SWS_ServiceDiscovery.pdf,R19-11
[2] AUTOSAR_PRS_SOMEIPServiceDiscoveryProtocol.pdf,R19-11
功能描述
OfferService功能
OfferService功能介绍
OfferService功能用于向外部声明可以提供某种服务。当本地ECU作为服务器端提供某种服务时:
i)该服务就绪时,Sd模块会主动发送包含OfferService Entry的报文向其他ECU表明当前有可用的某种服务。这种情况报文多播发送。
ii)当其它ECU发送FindService Entry主动寻找某种服务时,本地ECU作为服务提供者,向寻找服务的客户端发送OfferService Entry,表白可以提供某种服务。这种情况报文单播发送。
OfferService功能实现
当服务可用或者不可用时,SWC需要调用BswM的接口通知BswM某个服务可用/不可用,BswM会调用Sd_ServerServiceSetState(SdServerServiceHandleId,ServerServiceState)接口,向Sd模块表明该服务的状态。其中SdServerServiceHandleId参数用于标识服务,ServerServiceState用于标识服务状态。
Sd模块会根据当前的状态向外发送OfferService或者StopOfferService报文。报文中会携带SdServerServiceHandleId代表的服务的信息(IP地址,端口号等)。其他节点可以利用这些信息定位到该服务,以使用这些服务。
Server可以提供的服务在配置工具SdInstance🡪SdServerService中配置。
FindService 功能
FindService功能介绍
FindService功能用于寻找外部是否有可用的某种服务。当ECU需要使用某种服务时,Sd模块会发送包含FindService Entry的报文,用于寻找某种服务。
FindService功能实现
当SWC作为客户端需要使用某种服务时,SWC会需要调用BswM的接口通知BswM需要某个服务,BswM调用Sd_ClientServiceSetState(ClientServiceHandleId, ClientServiceState)接口,向Sd模块表明需要某个服务。
Sd模块会向外发送FindService报文。报文中会携带SdServerServiceHandleId代表的服务的具体信息(Service ID,版本号等)。其他节点理由这些信息判断自己是否可以提供这个服务,可以提供时会发送OfferService通知寻找服务的客户端。
Client需要的的服务(即需要寻找的服务)在配置工具SdInstance🡪SdClientService中配置。
Eventgroup订阅功能
Eventgroup订阅功能简介
Eventgroup订阅功能用于订阅需要接收的Eventgroup。
Eventgroup订阅功能的实现
当SWC(作为客户端)需要订阅某个Eventgroup时,SWC会调用BswM的接口通知BswM,BswM会调用Sd_ConsumedEventGroupSetState(SdConsumedEventGroupHandleId,ConsumedEventGroupState)接口通知Sd模块。当Sd模块收到提供该Eventgroup的对应服务发送的OfferService报文时,Sd模块会发送包含SubscribeEventgroup Entry的报文订阅Eventgroup。
Client需要订阅的Eventgroup在配置工具SdInstance🡪SdClientService🡪SdConsumedEventGroup中配置。
Eventgroup管理功能
Eventgroup管理功能简介
当Client向Server订阅Eventgroup时,Server需要管理订阅该Eventgroup的客户端。
Eventgroup管理功能的实现
当收到Client的SubscribeEventgroup报文后,Server需要和将SubscribeEventgroup报文中的信息(Eventgroup ID,版本号,Service ID等)和配置中保存的信息作比较,如果一致的情况下,并且该Client之前不在订阅列表中,则将该Client添加到订阅列表中,向该Client应答SubscribeEventgroupAck报文。如果该Client之前已经在订阅列表中,则用SubscribeEventgroup Entry中的TTL时间更新订阅列表中的TTL值。信息不一致的情况下,应答SubscribeEventgroupNAck报文。
当订阅时间到(SubscribeEventgroup中携带的TTL计时时间到)或者收到Client发送的StopSubscribeEventgroup Entry,Server需要将该Client从订阅列表中删除。
Server提供的Eventgroup(需要管理的Eventgroup)在配置工具SdInstance🡪SdServerService🡪SdEventHandler中配置。
RoutingPath控制功能
RoutingPath控制功能简介
Sd模块通过控制SoAd里面SoAdRoutingGroup的状态(Enable/Disable),从而达到控制Event的接收和发送的路径的通断,控制Event的接收和发送。其中对Event发送路径的控制叫Fan out控制,对Event接收路径的控制叫Fan in控制。
RoutingPath控制功能的实现
Fan out控制
当Client订阅Eventgroup时,Server根据Client发送的SubscribeEventgroup Entry中携带的信息在配置中找到与之匹配的SdEventHandler,根据SdEventHandler中的SdEventHandlerTcp/SdEventHandlerUdp找到对应的SoAdRoutingGroup(取得RoutingGroup ID)。根据SubscribeEventgroup Entry中携带的Endpoint option信息以及配置中的SdServerServiceUdpRef/SdServerServiceTcpRef参数推导出该Event发送对应的SocketConnection(取得SoConId),然后调用SoAd_EnableSpecificRouting()或SoAd_DisableSpecificRouting(RoutingGroupId,SoConId),来控制对应的RoutingGroup。
Fan in控制
当Client向Server发送SubscribeEventgroup Entry向Server订阅某个Eventgroup时,Client通过配置中的SdConsumedEventGroupTcpActivationRef/SdConsumedEventGroupUdpActivationRef参数找到对应的SoAdRoutingGroup(取得RoutingGroup ID)。根据OfferService Entry中携带的Endpoint option信息以及配置中的SdClientServiceUdpRef/SdClientServiceTcpRef参数推导出该Event发送对应的SocketConnection(取得SoConId),然后调用SoAd_EnableSpecificRouting()或SoAd_DisableSpecificRouting(RoutingGroupId,SoConId),来控制对应的RoutingGroup。
源文件描述
表3-1 Sd组件文件描述
文件 |
说明 |
Sd_cfg.h |
定义Sd模块预编译时用到的配置参数。 |
Sd_cfg.h |
定义Sd模块中连接时用到的配置参数。 |
Sd.h |
Sd模块头文 件,包含了API函数的扩展声明并定义了端口的数据结构。 |
Sd .c |
Sd模块源文件,包含了API函数的实现。 |
tlsf.c |
Sd模块使用的动态内存分配器的实现文件。 |
tlsf.h |
Sd模块使用的动态内存分配器的接口声明文件。 |
图3-1 Sd组件文件交互关系图
API接口
类型定义
Sd_ServerServiceSetStateType类型定义
名称 |
Sd_ServerServiceSetStateType |
|
类型 |
Enumeration |
|
范围 |
SD_SERVER_SERVICE_DOWN |
0 |
SD_SERVER_SERVICE_AVAILABLE |
1 |
|
描述 |
This type defines the Server states that are reported to the SD using the expected API Sd_ServerServiceSetState. |
Sd_ClientServiceSetStateType类型定义
名称 |
Sd_ClientServiceSetStateType |
|
类型 |
Enumeration |
|
范围 |
SD_CLIENT_SERVICE_RELEASED |
0 |
SD_CLIENT_SERVICE_REQUESTED |
1 |
|
描述 |
This type defines the Client states that are reported to the BswM using the expected API Sd_ClientServiceSetState. |
Sd_ConsumedEventGroupSetStateType类型定义
名称 |
Sd_ConsumedEventGroupSetStateType |
|
类型 |
Enumeration |
|
范围 |
SD_CONSUMED_EVENTGROUP_RELEASED |
0 |
SD_CONSUMED_EVENTGROUP_REQUESTED |
1 |
|
描述 |
This type defines the subscription policy by consumed EventGroup for the Client Service. |
Sd_ClientServiceCurrentStateType类型定义
名称 |
Sd_ClientServiceCurrentStateType |
|
类型 |
Enumeration |
|
范围 |
SD_CLIENT_SERVICE_DOWN |
0 |
SD_CLIENT_SERVICE_AVAILABLE |
1 |
|
描述 |
This type defines the modes to indicate the current mode request of a Client Service. |
Sd_ConsumedEventGroupCurrentStateType类型定义
名称 |
Sd_ConsumedEventGroupCurrentStateType |
|
类型 |
Enumeration |
|
范围 |
SD_CONSUMED_EVENTGROUP_DOWN |
0 |
SD_CONSUMED_EVENTGROUP_AVAILABLE |
1 |
|
描述 |
This type defines the subscription policy by consumed EventGroup for the Client Service. |
Sd_EventHandlerCurrentStateType类型定义
名称 |
Sd_EventHandlerCurrentStateType |
|
类型 |
Enumeration |
|
范围 |
SD_EVENT_HANDLER_RELEASED |
0 |
SD_EVENT_HANDLER_REQUESTED |
1 |
|
描述 |
This type defines the subscription policy by EventHandler for the Server Service. |
输入函数描述
输入模块 |
API |
Dem |
Dem_ReportErrorStatus |
Det |
Det_ReportError |
SoAd |
SoAd_DisableSpecificRouting |
SoAd_EnableSpecificRouting |
|
SoAd_GetLocalAddr |
|
SoAd_GetPhysAddr |
|
SoAd_GetRemoteAddr |
|
SoAd_IfSpecificRoutingGroupTransmit |
|
SoAd_IfTransmit |
|
SoAd_SetRemoteAddr |
|
SoAd_CloseSoCon |
|
SoAd_DisableRouting |
|
SoAd_EnableRouting |
|
SoAd_GetSoConId |
|
SoAd_IfRoutingGroupTransmit |
|
SoAd_OpenSoCon |
|
SoAd_ReleaseIpAddrAssignment |
|
SoAd_RequestIpAddrAssignment |
|
SoAd_SetUniqueRemoteAddr |
|
BswM |
BswM_Sd_ClientServiceCurrentState |
BswM_Sd_ConsumedEventGroupCurrentState |
|
BswM_Sd_EventHandlerCurrentState |
静态接口函数定义
Sd_Init函数定义
函数名称: |
Sd_Init |
||
函数原型: |
void Sd_Init ( const Sd_ConfigType* ConfigPtr ) |
||
服务编号: |
0x01 |
||
同步/异步: |
同步 |
||
是 否可重入: |
不可重入 |
||
输入参数: |
ConfigPtr |
值域: |
无 |
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
无 |
||
功能概述: |
初始化SD模块。 |
Sd_GetVersionInfo函数定义
函数名称: |
Sd_GetVersionInfo |
||
函数原型: |
void Sd_GetVersionInfo ( Std_ VersionInfoType* versioninfo ) |
||
服务编号: |
0x02 |
||
同步/异步: |
同步 |
||
是 否可重入: |
可重入 |
||
输入参数: |
无 |
||
输入 输出参数: |
无 |
||
输出参数: |
versioninfo |
值域: |
无 |
返回值: |
无 |
||
功能概述: |
返回S D模块的版本信息。 |
Sd_ServerServiceSetState函数定义
函数名称: |
Sd_Serv erServiceSetState |
||
函数原型: |
Std_ReturnType Sd_Serv erServiceSetState ( uint16 SdServe rServiceHandleId, Sd_ServerSe rviceSetStateType S erverServiceState ) |
||
服务编号: |
0x07 |
||
同步/异步: |
异步 |
||
是 否可重入: |
可重入 |
||
输入参数: |
SdServ erServiceHandleId |
值域: |
0 .. 65535 |
S erverServiceState |
值域: |
无 |
|
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
Std_ReturnType |
E_OK: State a ccepted E_ NOT_OK: State not a ccepted |
|
功能概述: |
BswM模块调用 该接口设置Server Service的状态。 |
Sd_ClientServiceSetState函数定义
函数名称: |
Sd_Clie ntServiceSetState |
||
函数原型: |
Std_ReturnType Sd_Clie ntServiceSetState ( uint16 Clien tServiceHandleId, Sd_ClientSe rviceSetStateType C lientServiceState ) |
||
服务编号: |
0x08 |
||
同步/异步: |
异步 |
||
是 否可重入: |
可重入 |
||
输入参数: |
Clie ntServiceHandleId |
值域: |
0 .. 65535 |
C lientServiceState |
值域: |
无 |
|
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
Std_ReturnType |
E_OK: State a ccepted E_ NOT_OK: State not a ccepted |
|
功能概述: |
BswM调用 该接口设置Client Service的状态。 |
Sd_ConsumedEventGroupSetState函数定义
函数名称: |
Sd_Co nsumedEventGroupSetState |
|||
函数原型: |
Std_ReturnType Sd_Co nsumedEventGroupSetState (
edEventGroupSetStateType
) |
|||
服务编号: |
0x09 |
|||
同步/异步: |
异步 |
|||
是否可重入: |
可重入 |
|||
输入参数: |
SdCo nsumedEventGroupHandleId |
值 | 域 | : | |
0 .. 65535 |
|
ConsumedEventGroupState |
值 | 域 | : | |
无 |
||
输 入输出参数: |
无 |
|||
输出参数: |
无 |
|||
返回值: |
Std_ReturnType |
E _OK: S tate acce pted E _NOT _OK: S tate not acce pted |
||
功能概述: |
BswM模 块调用该接口设置Consumed Event Group的状态。 |
Sd_LocalIpAddrAssignmentChg函数定义
函数名称: |
Sd_LocalIp AddrAssignmentChg |
||
函数原型: |
void Sd_LocalIp AddrAssignmentChg ( SoAd_SoConIdType SoConId, TcpI p_IpAddrStateType State ) |
||
服务编号: |
0x05 |
||
同步/异步: |
同步 |
||
是 否可重入: |
不 同SoConIds可重入. |
||
输入参数: |
SoConId |
值域: |
0 .. 65535 |
State |
值域: |
无 |
|
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
无 |
||
功能概述: |
当一个socket connection关 联的IP地址发生变 化时,SoAd调用该 接口通知Sd模块。 |
Sd_SoConModeChg函数定义
函数名称: |
Sd_SoConModeChg |
||
函数原型: |
void Sd_SoConModeChg ( SoAd_SoConIdType SoConId, S oAd_SoConModeType Mode ) |
||
服务编号: |
0x43 |
||
同步/异步: |
同步 |
||
是 否可重入: |
不 同SoConIds可重入 |
||
输入参数: |
SoConId |
值域: |
0 .. 65535 |
Mode |
值域: |
无 |
|
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
无 |
||
功能概述: |
当Socket Conne ction的状态发生变 化时,SoAd调用该 接口通知Sd模块。 |
Sd_RxIndication函数定义
函数名称: |
Sd_RxIndication |
||
函数原型: |
void Sd_RxIndication ( PduIdType RxPduId, const PduInfoType* PduInfoPtr ) |
||
服务编号: |
0x42 |
||
同步/异步: |
同步 |
||
是 否可重入: |
不同PduIds可重入 |
||
输入参数: |
RxPduId |
值域: |
0 .. 65535 |
PduInfoPtr |
值域: |
无 |
|
输入 输出参数: |
无 |
||
输出参数: |
无 |
||
返回值: |
无 |
||
功能概述: |
下层模 块调用该接口通知S d接收到一帧报文。 |
Sd_MainFunction函数定义
函数名称: |
Sd_MainFunction |
函数原型: |
void Sd_MainFunction ( void ) |
服务编号: |
0x06 |
同步/异步: |
同步 |
是 否可重入: |
不可重入 |
输入参数: |
无 |
输入 输出参数: |
无 |
输出参数: |
无 |
返回值: |
无 |
功能概述: |
Sd模块的周期处理函数。 |
可配置函数定义
无。
配置
SdGeneral
图5-1 SdGeneral容器配置图
表5‑1SdGeneral容器属性描述
UI名称 |
描述 |
|||
SdDevE rrorDetect |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
STD_OFF |
参数描述 |
DET检测功 能是否启用的开关。 |
|||
依赖关系 |
无 |
|||
SdM ainFunctio nCycleTime |
取值范围 |
1E-3 .. 1 |
默认取值 |
无 |
参数描述 |
周期处 理函数的调度周期。 |
|||
依赖关系 |
无 |
|||
SdSetR emAddrOfCl ientRxMult icastSoCon |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
无 |
参数描述 |
当该参数设置为TR UE时,Sd接收到Offer Service时,根据接收 到的Endpoint选择一 个匹配的多播Socket Connectio n。如果对应的Socket Connect ion不存在,则选择一 个未使用的远端地址 为wildcard的Socket Connection, 并更新其远端地址。 如果改参数设 置为FALSE,Sd选择一 个未使用的远端地址 为wildcard的Socket Connection,但 不更新其远端地址。 |
|||
依赖关系 |
无 |
|||
Sd SubscribeE ventgroupR etryEnable |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
无 |
参数描述 |
订阅服务端 的Eventgroups是否启 用Retry机制的开关。 |
|||
依赖关系 |
SdSubscribeEventgro upRetryEnable参数设 置为STD_OFF时,SdCl ientTimer对象的SdSu bscribeEventgroupRe tryDelay参数和SdSub scribeEventgroupRet ryMax参数不可以配置 |
|||
SdVers ionInfoApi |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
STD_OFF |
参数描述 |
是否生成获取 版本信息API的开关。 |
|||
依赖关系 |
无 |
|||
SdRxMemo ryPoolSize |
取值范围 |
0-2147483647 |
默认取值 |
1024 |
参数描述 |
接收服 务的内存池的大小。 |
|||
依赖关系 |
无 |
|||
SdRxMemo ryPoolSize |
取值范围 |
0-2147483647 |
默认取值 |
1024 |
参数描述 |
发送服 务的内存池的大小。 |
|||
依赖关系 |
无 |
|||
SdMo duleEnable |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
无 |
参数描述 |
表示Sd模块是否使能 |
|||
依赖关系 |
无 |
SdConfig
图5-2 SdConfig容器配置图
表5‑2 SdConfig容器属性描述
UI名称 |
描述 |
|||
SdInstance |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器 表示SD的一个实例。 |
|||
依赖关系 |
无 |
SdInstance
图5-3 SdInstance容器配置图
表5‑3 SdInstance容器属性描述
UI名称 |
描述 |
|||
SdInstan ceHandleId |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
SdInstance的handle Id |
|||
依赖关系 |
无 |
|||
SdInstan ceHostname |
取值范围 |
String |
默认取值 |
无 |
参数描述 |
用于配置Hostname |
|||
依赖关系 |
无 |
|||
Sd InstanceLo calAdressC heckLength |
取值范围 |
0 .. 128 |
默认取值 |
无 |
参数描述 |
该参数表示当确定某 个远端地址是否被接 收时,从IP地址中取 出多少bit用于比较。 |
|||
依赖关系 |
无 |
|||
Sd AddrFamily |
取值范围 |
TCPIP_AF_INET TCPIP_AF_INET6 |
默认取值 |
TCP IP_AF_INET |
参数描述 |
Domain类型 |
|||
依赖关系 |
无 |
|||
SdCli entService |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器包含客户端服 务所用的所有参数。 |
|||
依赖关系 |
无 |
|||
SdC lientTimer |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
该容 器表示客户端服务所 用的所有时间参数。 |
|||
依赖关系 |
无 |
|||
S dInstanceD emEventPar ameterRefs |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器引用 到DemEventParamete r,用于出现错误时, 调用Dem_ReportErro rStatus()函数时使用 。可从DemEventParam eter中获取EventId。 |
|||
依赖关系 |
无 |
|||
SdIn stanceMult icastRxPdu |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
表示 接收多播SD报文的PDU |
|||
依赖关系 |
无 |
|||
SdIns tanceTxPdu |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
表示 发送的SD报文的PDU。 |
|||
依赖关系 |
无 |
|||
Sd InstanceUn icastRxPdu |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
表示接 收单播SD报文的PDU。 |
|||
依赖关系 |
无 |
|||
SdSer verService |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器包含服务端服 务所用的所有参数。 |
|||
依赖关系 |
无 |
|||
SdS erverTimer |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
该容 器表示服务端服务所 用的所有时间参数。 |
|||
依赖关系 |
无 |
SdClientTimer
图5-4 SdClientTimer容器配置图
表5‑4 SdClientTimer容器属性描述
UI名称 |
描述 |
|||
Sd ClientTime rInitialFi ndDelayMax |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当发送Fin d报文时,随机延时的 最大值,单位是秒。 |
|||
依赖关系 |
无 |
|||
Sd ClientTime rInitialFi ndDelayMin |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当发送Fin d报文时,随机延时的 最小值,单位是秒。 |
|||
依赖关系 |
SdClientTimer InitialFindDelayMin <= SdClientTimer InitialFindDelayMax |
|||
SdCl ientTimerI nitialFind Repetition sBaseDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
在Repetition阶段重 复发送Find报文的基 准时间,单位是秒。 |
|||
依赖关系 |
无 |
|||
SdClient TimerIniti alFindRepe titionsMax |
取值范围 |
0 .. 10 |
默认取值 |
无 |
参数描述 |
在Repe tition阶段重复发送F ind报文的最大次数。 |
|||
依赖关系 |
无 |
|||
SdClie ntTimerReq uestRespon seMaxDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当接收到多播发送 的请求时,应答时随 机延时的最大时间。 |
|||
依赖关系 |
无 |
|||
SdClie ntTimerReq uestRespon seMinDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当接收到多播发送 的请求时,应答时随 机延时的最小时间。 |
|||
依赖关系 |
SdClientTimerRequ estResponseMinDelay <= SdClientTimerRequ estResponseMaxDelay |
|||
SdClie ntTimerTTL |
取值范围 |
1 .. 16777215 |
默认取值 |
无 |
参数描述 |
find和subscri be报文中的TTL时间。 |
|||
依赖关系 |
无 |
|||
S dSubscribe Eventgroup RetryDelay |
取值范围 |
0.001 .. 50 |
默认取值 |
0.01 |
参数描述 |
当一个 订阅报文没有收到Sub scribeEventGroupAck 或者SubscribeEve ntGroupNack时,重复 订阅时的延时时间。 |
|||
依赖关系 |
该参数只有当 SdSubscribeEv entgroupRetryEnable 为 TRUE并且SdSubscrib eEventgroupRetryMax > 0时可用。 |
|||
SdSubscri beEventgro upRetryMax |
取值范围 |
0 .. 255 |
默认取值 |
0 |
参数描述 |
当一个 订阅报文没有收到Sub scribeEventGroupAck 或者SubscribeEve ntGroupNack时,可重 复订阅的最大次数。 0x0=no retry, 0xFF=retry forever |
|||
依赖关系 |
该参数只有当 SdSubscribeEv entgroupRetryEnable 为TRUE时可用 |
SdServerTimer
图5-5 SdServerTimer容器配置图
表5‑5 SdServerTimer容器属性描述
UI名称 |
描述 |
|||
SdS erverTimer InitialOff erDelayMax |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当发送第一次Offe r报文时,随机延时的 最大值,单位是秒。 |
|||
依赖关系 |
无 |
|||
SdS erverTimer InitialOff erDelayMin |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当发送第一次Offe r报文时,随机延时的 最小值,单位是秒。 |
|||
依赖关系 |
SdServerTimerI nitialOfferDelayMin <= SdServerTimerI nitialOfferDelayMax |
|||
SdSe rverTimerI nitialOffe rRepetitio nBaseDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
在Repetition阶段重 复发送Offer报文的基 准时间,单位是秒。 |
|||
依赖关系 |
无 |
|||
SdServerT imerInitia lOfferRepe titionsMax |
取值范围 |
0 .. 10 |
默认取值 |
无 |
参数描述 |
在Repet ition阶段重复发送Of fer报文的最大次数。 |
|||
依赖关系 |
无 |
|||
SdServerT imerOfferC yclicDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
在M ain阶段,重复发送Of fer报文的周期时间。 |
|||
依赖关系 |
无 |
|||
SdServ erTimerReq uestRespon seMaxDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当接收到多播发送 的请求时,应答时随 机延时的最大时间。 |
|||
依赖关系 |
无 |
|||
SdServ erTimerReq uestRespon seMinDelay |
取值范围 |
0 .. INF |
默认取值 |
无 |
参数描述 |
当接收到多播发送 的请求时,应答时随 机延时的最小时间。 |
|||
依赖关系 |
SdServerTimerRequ estResponseMinDelay <= SdServerTimerRequ estResponseMaxDelay |
|||
SdServ erTimerTTL |
取值范围 |
1 .. 16777215 |
默认取值 |
无 |
参数描述 |
Offer S ervice中的TTL时间。 |
|||
依赖关系 |
无 |
SdServerService
图5-6 SdServerService容器配置图
表5‑6 SdServerService容器属性描述
UI名称 |
描述 |
|||
SdServer ServiceAut oAvailable |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
STD_OFF |
参数描述 |
设置为TRU E,则改服务在启动时 自动被设置为可用。 |
|||
依赖关系 |
无 |
|||
SdS erverServi ceHandleId |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
BswM识别 该服务的HandleId。 |
|||
依赖关系 |
无 |
|||
SdServe rServiceId |
取值范围 |
1 .. 65534 |
默认取值 |
无 |
参数描述 |
识别该服务的ID,不 同的服务需要唯一。 |
|||
依赖关系 |
无 |
|||
SdSer verService InstanceId |
取值范围 |
0 .. 65534 |
默认取值 |
无 |
参数描述 |
服 务端服务的实例ID。 |
|||
依赖关系 |
无 |
|||
SdServe rServiceMa jorVersion |
取值范围 |
0 .. 254 |
默认取值 |
无 |
参数描述 |
服务端服务的Major Version。 |
|||
依赖关系 |
无 |
|||
SdServe rServiceMi norVersion |
取值范围 |
0 .. 4294967294 |
默认取值 |
无 |
参数描述 |
服务端服务的Minor Version。 |
|||
依赖关系 |
无 |
|||
S dServerSer viceTcpRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个TCP S oAdSocketConnection Group,用于该服务。 |
|||
依赖关系 |
无 |
|||
SdS erverServi ceTimerRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个SdServ erTimer用于该服务。 |
|||
依赖关系 |
无 |
|||
S dServerSer viceUdpRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个UDP S oAdSocketConnection Group,用于该服务。 |
|||
依赖关系 |
无 |
|||
SdEv entHandler |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器表示服 务中的EventGroup。 |
|||
依赖关系 |
无 |
|||
SdProvi dedMethods |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
Container element for representing the needed elements of the data path for the methods provided by the service 该容器表示服务提供 的方法的数据路径。 |
|||
依赖关系 |
无 |
|||
SdSe rverCapabi lityRecord |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
表示用于存储name/va lue属性的capability records |
|||
依赖关系 |
无 |
SdClientService
图5-7 SdServerService容器配置图
表5‑7 SdServerService容器属性描述
UI名称 |
描述 |
|||
SdClie ntServiceA utoRequire |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
STD_OFF |
参数描述 |
设置为 TRUE,则服务在启动 时自动设置为“需要” |
|||
依赖关系 |
无 |
|||
SdC lientServi ceHandleId |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
BswM识别 该服务的HandleId。 |
|||
依赖关系 |
无 |
|||
SdClien tServiceId |
取值范围 |
1 .. 65534 |
默认取值 |
无 |
参数描述 |
识别该服务的ID,不 同的服务需要唯一。 |
|||
依赖关系 |
无 |
|||
SdCli entService InstanceId |
取值范围 |
0 .. 65534 |
默认取值 |
无 |
参数描述 |
该服务的实例Id |
|||
依赖关系 |
无 |
|||
SdClien tServiceMa jorVersion |
取值范围 |
0 .. 254 |
默认取值 |
无 |
参数描述 |
Major version number of the Service as used in the SD entries. 客户端服务的Major version。 |
|||
依赖关系 |
无 |
|||
SdClien tServiceMi norVersion |
取值范围 |
0 .. 4294967294 |
默认取值 |
无 |
参数描述 |
客户端服务的Minor version。 |
|||
依赖关系 |
无 |
|||
S dClientSer viceTcpRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个TCP S oAdSocketConnection Group,用于该服务。 |
|||
依赖关系 |
无 |
|||
SdC lientServi ceTimerRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个SdClient Timer,用于该服务。 |
|||
依赖关系 |
无 |
|||
S dClientSer viceUdpRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个UDP S oAdSocketConnection Group,用于该服务。 |
|||
依赖关系 |
无 |
|||
SdCl ientCapabi lityRecord |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
表示用于存储name/va lue属性的capability records |
|||
依赖关系 |
无 |
|||
SdConsumed EventGroup |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器表示consumed event gr oup用到的所有参数。 |
|||
依赖关系 |
无 |
|||
SdConsu medMethods |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该 容器表示访问服务端 的方法的数据通道。 |
|||
依赖关系 |
无 |
SdCapabilityRecord
图5-8 SdCapabilityRecord容器配置图
表5‑8 SdCapabilityRecord容器属性描述
UI名称 |
描述 |
|||
S dCapabilit yRecordKey |
取值范围 |
String |
默认取值 |
无 |
参数描述 |
定义一 个CapabilityRecord key. |
|||
依赖关系 |
无 |
|||
SdC apabilityR ecordValue |
取值范围 |
String |
默认取值 |
无 |
参数描述 |
定义key对应的 CapabilityRecord值. |
|||
依赖关系 |
无 |
SdConsumedEventGroup
图5-9 SdConsumedEventGroup容器配置图
表5‑9 SdConsumedEventGroup容器属性描述
UI名称 |
描述 |
|||
S dConsumedE ventGroupA utoRequire |
取值范围 |
STD_ON / STD_OFF |
默认取值 |
STD_OFF |
参数描述 |
设置为TRUE,则在 启动时,该EventGrou p被自动设置为“需要” |
|||
依赖关系 |
无 |
|||
SdConsum edEventGro upHandleId |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
BswM识 别该服务的HandleId |
|||
依赖关系 |
无 |
|||
Sd ConsumedEv entGroupId |
取值范围 |
0 .. 65534 |
默认取值 |
无 |
参数描述 |
Eventgroup Id |
|||
依赖关系 |
无 |
|||
Sd ConsumedEv entGroupMu lticastAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
指向一个SoAd RoutingGroup对象,S d通过该对象控制用于 接收多播Event的通道 |
|||
依赖关系 |
无 |
|||
SdConsu medEventGr oupMultica stGroupRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
指 向SoAdSocketConnec tionGroup对象,多播 Event通过该通道接收 |
|||
依赖关系 |
无 |
|||
SdCons umedEventG roupTcpAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
关联一个配 置为TCP的SoAdSocket ConnectionGroup,用 于控制TCP事件的接收 |
|||
依赖关系 |
无 |
|||
SdConsum edEventGro upTimerRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
关联一个Sd ClientTimer,用于提 供和SdConsumedEvent Group相关的时间参数 |
|||
依赖关系 |
无 |
|||
SdCons umedEventG roupUdpAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
关联一个配 置为UDP的SoAdSocket ConnectionGroup,用 于控制UDP事件的接收 |
|||
依赖关系 |
无 |
|||
SdCl ientCapabi lityRecord |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器 用于定义capability records |
|||
依赖关系 |
无 |
SdConsumedMethods
图5-10 SdConsumedMethods容器配置图
表5‑10 SdConsumedMethods容器属性描述
UI名称 |
描述 |
|||
SdClient ServiceAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用一个S oAdRoutingGroup对象 ,Sd通过该引用打开 Client的Method通道 |
|||
依赖关系 |
无 |
SdEventHandler
图5-11 SdEventHandler容器配置图
表5‑11 SdEventHandler容器属性描述
UI名称 |
描述 |
|||
SdEven tHandlerEv entGroupId |
取值范围 |
0 .. 65534 |
默认取值 |
无 |
参数描述 |
用于配置EventGroup Id |
|||
依赖关系 |
无 |
|||
Sd EventHandl erHandleId |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
BswM通过该Han dleId识别EventGroup |
|||
依赖关系 |
无 |
|||
Sd EventHandl erMulticas tThreshold |
取值范围 |
0 .. 65535 |
默认取值 |
无 |
参数描述 |
用于 设置一个阈值,当订 阅列表中的Client大 于等于该值时,使用 多播进行Event的发送 |
|||
依赖关系 |
无 |
|||
Sd EventHandl erTimerRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
关 联一个SdServerTimer ,用于提供和EventHa ndler相关的时间参数 |
|||
依赖关系 |
无 |
|||
SdE ventHandle rMulticast |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器包含用于 激活通过多播发送的 Event的RoutingGroup |
|||
依赖关系 |
无 |
|||
SdEvent HandlerTcp |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器包含用 于激活通过TCP发送的 Event的RoutingGroup |
|||
依赖关系 |
无 |
|||
SdEvent HandlerUdp |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
该容器包含用 于激活通过UDP发送的 Event的RoutingGroup |
|||
依赖关系 |
无 |
|||
SdSe rverCapabi lityRecord |
取值范围 |
Container |
默认取值 |
无 |
参数描述 |
在该容 器中定义Capability Record |
|||
依赖关系 |
无 |
SdEventHandlerMulticast
图5-12 SdEventHandlerMulticast容器配置图
表5‑12 SdEventHandlerMulticast容器属性描述
UI名称 |
描述 |
|||
SdEventAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引 用一个SoAdRoutingGr oup对象,Sd通过该引 用打开多播数据发送 通道,之后多播Even t便可以发送给Client |
|||
依赖关系 |
无 |
|||
SdMu lticastEve ntSoConRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用一个SoA dSocketConnection对 象,用于多播发送。 |
|||
依赖关系 |
无 |
SdEventHandlerTcp
图5-13 SdEventHandlerTcp容器配置图
表5‑13 SdEventHandlerTcp容器属性描述
UI名称 |
描述 |
|||
SdEventAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用一个SoAdRouting Group对象,当有Clie nt订阅该事件组时,S d通过该引用打开数据 发送通道,之后Even t便可以发送给Client |
|||
依赖关系 |
无 |
|||
SdEventTri ggeringRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用 一个SoAdRoutingGro up对象,用于Trigger Transmit。当配置的E ventgroup中包含属于 Field的Event时,配 置该对象,在SoAd中 配置属于Field的Even t的SoAdPduRoute时, SoAdTxRoutingGroup Ref中关联这里配置的 SoAdRoutingGroup。 当第一次订阅Ev entgroup时,Eventgr oup会主动发送一次。 |
|||
依赖关系 |
无 |
SdEventHandlerUdp
图5-14 SdEventHandlerUdp容器配置图
表5‑14 SdEventHandlerUdp容器属性描述
UI名称 |
描述 |
|||
SdEventAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用一个SoAdRouting Group对象,当有Clie nt订阅该事件组时,S d通过该引用打开数据 发送通道,之后Even t便可以发送给Client |
|||
依赖关系 |
无 |
|||
SdEventTri ggeringRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用 一个SoAdRoutingGro up对象,用于Trigger Transmit。当配置的E ventgroup中包含属于 Field的Event时,配 置该对象,在SoAd中 配置属于Field的Even t的SoAdPduRoute时, SoAdTxRoutingGroup Ref中关联这里配置的 SoAdRoutingGroup。 当第一次订阅Ev entgroup时,Eventgr oup会主动发送一次。 |
|||
依赖关系 |
无 |
SdProvidedMethods
图5-15 SdProvidedMethods容器配置图
表5‑15 SdProvidedMethods容器属性描述
UI名称 |
描述 |
|||
SdServer ServiceAct ivationRef |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用一个 SoAdRoutingGroup对 象,Sd通过该引用打 开服务的Method通道 |
|||
依赖关系 |
无 |
SdInstanceDemEventParameterRefs
图5-16 SdInstanceDemEventParameterRefs容器配置图
表5‑16 SdInstanceDemEventParameterRefs容器属性描述
UI名称 |
描述 |
|||
SD_E_MAL FORMED_MSG |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一个DemEvent Parameter,当Sd接收 到长度错误的报文时 ,通过该参数通知Dem |
|||
依赖关系 |
无 |
|||
SD_E_ OUT_OF_RES |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引用到一 个DemEventParamete r,当Sd资源不足无法 处理客户端的请求时 ,通过该参数通知Dem |
|||
依赖关系 |
无 |
|||
S D_E_SUBSCR _NACK_RECV |
取值范围 |
Reference |
默认取值 |
无 |
参数描述 |
引 用到一个DemEventPa rameter,收到Subscr ibeEventgroupNack时 ,通过该参数通知Dem |
|||
依赖关系 |
无 |