第十九章 TCP 客户端 服务器通信 - 数据包模式

文章目录

第十九章 TCP 客户端 服务器通信 - 数据包模式

数据包模式

如果未指定模式,则默认为数据包模式。如果流模式被禁用,则该模式默认为分组模式。

在分组模式中,只要有一些数据要返回,读取命令就会完成。数据包模式允许在输出缓冲区中构建整个TCP数据段,然后通过发出WRITE*-3WRITE!命令。

如果在没有要发送的字符的情况下发出WRITE*-1来启动一个TCP发送操作,则会收到一个<WRITE>错误。如果发出WRITE OF空字符串,则会收到<COMMAND>错误。

在分组模式下可以发送的字符串的最大长度为1024个字符。如果在未刷新缓冲区的情况下超过此限制,则会收到<WRITE>错误。

因为 TCP/IP 忽略长度为 0 的记录,所以如果在其中没有字符时刷新写入缓冲区,会收到 <WRITE>错误。

在服务器收到连接请求之前,从服务器到客户端的WRITE命令会在服务器上产生<WRITE> 错误。

回车模式(C模式)

此模式修改对输入和输出的回车处理。

在输出时,WRITE ! 生成"CR LF",而WRITE#生成"CR FF"

在输入时,在启用T模式的情况下,服务器尝试将相邻的CRLF或相邻的CRFF记录为$ZB中的单个终止符。如果CRLF没有在彼此的短时间间隔内到达,则将它们作为单独的终结器进行处理。默认情况下,间隔为1秒。

监控断开模式(D模式)

此模式打开或关闭异步断开监控。通过指定"D"模式字符或/POLLDISCON关键字参数来激活此模式。当指定+D时,将激活TCP断开监视;当指定-D时,将停用TCP断开监视。

当被激活时,IRIS大约每隔60秒轮询一次TCP连接。当检测到断开连接时,IRIS会发出一个<DISCONNECT>错误。在空闲作业中不会发生断开连接检测,例如被挂起命令挂起的作业或等待读取操作的作业。 IRIS在回滚操作期间挂起所有断开监视,以防止发出错误。回滚结束后, IRIS将恢复断开连接监视。此挂起既适用于激活了断开监控的当前TCP设备,也适用于连接到启用了断开监控的TCP设备的未启用断开监控的当前设备。

还可以使用 %SYSTEM.INetInfo 类的 Connected() 方法检查 TCP 断开连接。

转义序列处理模式(E模式)

当设置 E 模式时,输入流中的转义序列被解析并放入 $ZB 特殊变量中。转义序列不得超过 15 个字符,并且必须符合以下语法:

java 复制代码
esc_seq::=type1 | type2
java 复制代码
type1 ::= '['['0':'?']*['':'/']*{'@':DEL}   
type2 ::= [';'|'?'|'O']['':'/']*{'0':DEL}

这里使用的句法符号表示:

Code Desc
: x:y 表示 ASCII 序列中从 xy 的指定范围的字符。
` `
[ ] 指定指定集合的零个或一个成员。
[ ]* 指定指定集合的零个、一个或多个成员。
{ } 准确指定指定集合的一个成员。

IRIS 发现 ESCAPE 时,它最多等待 1 秒,等待剩余的转义序列到达。如果转义序列与此语法不匹配,或者如果它超过 15 个字符,或者如果有效的转义序列未在 1 秒内到达, IRIS 将部分转义序列放入 $ZB 并设置"BADESC"位( 256) 在 $ZA

相关推荐
数据知道23 分钟前
PHP 代码审计实战——ThinkPHP、Laravel 历史漏洞模式深度剖析
android·网络·web安全·网络安全·php·laravel
牢姐与蒯38 分钟前
Linux进程(四).进程优先级以及进程切换,进程调度
linux·运维·服务器·ubuntu
大爱编程♡1 小时前
Linux C 语言文件 IO 与构建工具实战指南
linux·服务器
rcms152702692181 小时前
HITACHI 560BIR01 1KGT034000R0101 二进制输入模块
网络
yyuuuzz1 小时前
企业出海云服务器部署踩坑记录:从频繁超时到稳定运行的复盘
运维·服务器·网络·人工智能·aws
EasyGBS2 小时前
连锁书店如何用国标GB28181公网平台EasyGBS把“远程巡店”做成日常基本功?
服务器·网络·音视频
LabVIEW开发2 小时前
TTi CPX400 系列可编程电源的 LabVIEW 远程控制
网络·labview·labview知识·labview功能·labview程序
爱研究的小梁3 小时前
多链路聚合网关硬件接口详解
网络
Java小白笔记3 小时前
Codex CLI 使用与斜杠指令实战教程
服务器·数据库·oracle
楷哥爱开发3 小时前
HTTP代理是什么?性能分析、适用场景与配置教程
网络·网络协议·http