CAPL学习-SOME/IP交互层-TCP处理类函数

TCP Handling

SomeIpCloseEstablishedTCPConnection

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpCloseEstablishedTCPConnection

函数功能

关闭一个或多个数据库中定义的 TCP 连接。

语法
capl 复制代码
dword SomeIpCloseEstablishedTCPConnection();                  // 形式 1  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle);   // 形式 2  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, dword remoteIPv4Address);  // 形式 3  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, dword remoteIPv4Address, dword remotePort);  // 形式 4  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, byte remoteIPv6Address[]);  // 形式 5  
long SomeIpCloseEstablishedTCPConnection(dword aepHandle, byte remoteIPv6Address[], dword remotePort);  // 形式 6  
long SomeIpCloseEstablishedTCPConnection(dword aepHandle, IP_Endpoint remoteIPEndpoint);  // 形式 7  
形式说明
  • 形式 1:关闭本节点(作为 TCP 客户端)的所有 TCP 连接。
  • 形式 2:关闭 TCP 客户端的所有 TCP 连接。
  • 形式 3/5:关闭 TCP 客户端与特定 TCP 服务器的所有 TCP 连接。
  • 形式 4/6:关闭 TCP 客户端与特定 TCP 服务器的 TCP 连接。

TCP 连接可通过 SomeIpEstablishTCPConnection 函数建立。

参数说明
  • aepHandle:发起连接的源应用端点,必须在数据库中定义。
  • remotePort:可发送和接收消息的端口。
  • remoteIPv4Address :需关闭连接的 IPv4 地址,可通过 IPGetAddressAsNumber 函数转换。
  • remoteIPv6Address :需关闭连接的 IPv6 地址,可通过 IpGetAddressAsArray 函数转换。
  • remoteIPEndpointIP_Endpoint 类型对象,包含远程端点的地址和端口。
返回值
  • 0:函数执行成功。
  • >0:错误代码。
可用性
版本 支持形式 限制范围 测量配置 仿真/测试配置
11.0 SP3 形式 1-6 以太网 ---
12.0 SP2 形式 7 以太网 ---
示例
capl 复制代码
variables  
{  
  dword aep;  // 应用端点句柄  
}  

on start  
{  
  // 句柄需关联数据库中有效的应用端点  
  aep = SomeIpOpenLocalApplicationEndpoint(IP_Endpoint(TCP:192.168.1.1:40000));  
}  

on key 'o'  
{  
  // 建立到特定端点的连接  
  if (SomeIpEstablishTCPConnection(aep, IP_Endpoint(TCP:192.168.1.2:50000)) != 0)  
  {  
    write("连接未建立");  
  }  
}  

on key 'c'  
{  
  // 关闭节点上下文中的所有连接  
  if (SomeIpCloseEstablishedTCPConnection() == 0)  
  {  
    write("连接已关闭");  
  }  
}  

SomeIpEstablishTCPConnection

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpEstablishTCPConnection

函数功能

建立一个或多个数据库中定义的 TCP 连接。

语法
capl 复制代码
dword SomeIpEstablishTCPConnection();                  // 形式 1  
dword SomeIpEstablishTCPConnection(dword aepHandle);   // 形式 2  
dword SomeIpEstablishTCPConnection(dword aepHandle, dword remoteIPv4Address);  // 形式 3  
dword SomeIpEstablishTCPConnection(dword aepHandle, dword remoteIPv4Address, dword remotePort);  // 形式 4  
dword SomeIpEstablishTCPConnection(dword aepHandle, byte remoteIPv6Address[]);  // 形式 5  
long SomeIpEstablishTCPConnection(dword aepHandle, byte remoteIPv6Address[], dword remotePort);  // 形式 6  
long SomeIpEstablishTCPConnection(dword aepHandle, IP_Endpoint remoteIPEndpoint);  // 形式 7  
形式说明
  • 形式 1:建立本节点(作为 TCP 客户端)的所有 TCP 连接。
  • 形式 2:建立 TCP 客户端的所有 TCP 连接。
  • 形式 3/5:建立 TCP 客户端与特定 TCP 服务器的所有 TCP 连接。
  • 形式 4/6:建立 TCP 客户端与特定 TCP 服务器的 TCP 连接。

TCP 连接可通过 SomeIpCloseEstablishedTCPConnection 函数关闭。

参数说明
  • aepHandle:发起连接的源应用端点,必须在数据库中定义。
  • remotePort:可发送和接收消息的端口。
  • remoteIPv4Address :需建立连接的 IPv4 地址,可通过 IPGetAddressAsNumber 函数转换。
  • remoteIPv6Address :需建立连接的 IPv6 地址,可通过 IpGetAddressAsArray 函数转换。
  • remoteIPEndpointIP_Endpoint 类型对象,包含远程端点的地址和端口。
返回值
  • 0:函数执行成功。
  • >0:错误代码。
可用性
版本 支持形式 限制范围 测量配置 仿真/测试配置
11.0 SP3 形式 1-6 以太网 ---
12.0 SP2 形式 7 以太网 ---
示例
capl 复制代码
variables  
{  
  dword aep;  // 应用端点句柄  
}  

on start  
{  
  // 句柄需关联数据库中有效的应用端点  
  aep = SomeIpOpenLocalApplicationEndpoint(IP_Endpoint(TCP:192.168.1.1:40000));  
}  

on key 'o'  
{  
  // 建立到特定端点的连接  
  if (SomeIpEstablishTCPConnection(aep, IP_Endpoint(TCP:192.168.1.2:50000)) != 0)  
  {  
    write("连接未建立");  
  }  
}  

on key 'c'  
{  
  // 关闭节点上下文中的所有连接  
  if (SomeIpCloseEstablishedTCPConnection() == 0)  
  {  
    write("连接已关闭");  
  }  
}  

SomeIpTCPListen

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpTCPListen

函数功能

监听此 TCP 应用端点。

语法
capl 复制代码
long SomeIpTCPListen(dword aepHandle)  
参数说明
  • aepHandle:应用端点。
返回值
  • 0:函数执行成功。
可用性
版本 限制范围 测量配置 仿真/测试配置
11.0 SP3 以太网 ---
示例

相关推荐
LN花开富贵10 小时前
Ubuntu aarch64 架构安装 NoMachine 远程控制 避坑与实战
linux·运维·笔记·学习·ubuntu·嵌入式
-To be number.wan10 小时前
数据库单表查询全攻略
数据库·学习
ゆづき10 小时前
Java 初学者入门指南:常见问题 + 核心知识点 + 进阶 20 道练习题
java·开发语言·学习·算法·水题
叶~小兮12 小时前
ELK技术栈全套学习笔记(Elasticsearch+Logstash+Filebeat)
笔记·学习·elk
牛奶12 小时前
抛弃TCP改用UDP,HTTP3疯了吗?
前端·tcp/ip·http3
婷婷_17212 小时前
【PCIe 验证每日学习・Day36】PCIe 存储器寻址空间与 BAR 底层原理
网络·学习·程序人生·芯片·pcie
.千余13 小时前
【Linux 】网络基础1
linux·运维·服务器·开发语言·网络·学习
qeen8713 小时前
【算法笔记】各种常见排序算法详细解析(下)
c语言·数据结构·c++·笔记·学习·算法·排序算法
TechWayfarer13 小时前
IP归属地API实战指南:用IP数据云解析日志挖掘用户地域分布
大数据·开发语言·网络·python·tcp/ip