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 以太网 ---
示例

相关推荐
2501_9011478321 小时前
学习笔记:单调递增数字求解的迭代优化与工程实践
linux·服务器·笔记·学习·算法
苦逼IT运维1 天前
从 0 到 1 理解 Kubernetes:一次“破坏式”学习实践(一)
linux·学习·docker·容器·kubernetes
野犬寒鸦1 天前
从零起步学习并发编程 || 第五章:悲观锁与乐观锁的思想与实现及实战应用与问题
java·服务器·数据库·学习·语言模型
阿蒙Amon1 天前
TypeScript学习-第13章:实战与最佳实践
javascript·学习·typescript
三水不滴1 天前
计算机网络核心网络模型
经验分享·笔记·tcp/ip·计算机网络·http·https
云小逸1 天前
【nmap源码学习】 Nmap 源码深度解析:nmap_main 函数详解与 NSE 脚本引擎原理
网络协议·学习·安全
hssfscv1 天前
Javaweb学习笔记——后端实战8 springboot原理
笔记·后端·学习
苍煜1 天前
超简单 poi-tl 学习博客:从0到1掌握Word生成(无需模板+模板填充)
学习·word
使者大牙1 天前
【单点知识】CANopen实用协议介绍
服务器·网络·tcp/ip
sensen_kiss1 天前
Jupter Notebook 使用教程
大数据·人工智能·python·学习·数据分析