客户端至客户端协议

✍ dations ◷ 2025-02-24 14:26:54 #IRC,网络术语,IRC相关协议

客户端至客户端协议(英语:Client-to-client protocol ,简称CTCP)是互联网中继聊天(IRC)客户端之间的一种特殊类型的通信。

CTCP是现今使用的大多数IRC客户端支持的一种常见协议。CTCP扩展了原始的IRC协议,允许用户查询其他客户端或频道(使频道中所有客户端都回复CTCP特殊信息)。此外,CTCP可以用来编码信息,发送原始IRC协议的链路不允许发送的信息,例如包含换行或字节值为0(NULL)的信息。CTCP不在客户端之间创建直接连接,但它通常用于协商DCC(英语:Direct Client-to-Client)连接。

CTCP允许用户查询远程客户端正在使用的客户端版本(通过CTCP VERSION)或时间(CTCP TIME)等信息。它还实现了/me命令(通过CTCP ACTION)。

ircII(英语:ircII)是第一个实现了CTCP和DCC协议的IRC客户端。Michael Sandrof在1990年将CTCP协议在ircII 2.1版中实现,Troy Rollo在1991年将DCC协议在2.1.2版本中实现。

CTCP采用一条PRIVMSGNOTICE消息实现,消息中的第一个和最后一个字符是ASCII值0x01。此外,IRC协议中不允许的字符将被转义。由于NOTICE按标准应产生一条回复,CTCP消息采用PRIVMSG发送,而回复采用NOTICE而非PRIVMSG实现。

CTCP查询在大多数客户端上按下列方式初始化:

CTCP <target> <command> <arguments>

其中是目标的昵称或频道名称, 是CTCP命令(例如VERSION), 是发送给的额外信息。

请注意,下列CTCP命令和回复因客户端而不同,但大多数主要的IRC客户端支持它们。因您的IRC客户端不同,传入特定CTCP命令后,您可能会收到或不会收到自动的回复或响应,并且这些自动响应可能因客户端不同而有差异。

CTCP VERSION请求将返回目标正在使用的IRC客户端的名称和版本,某些情况下还提供一些技术信息,诸如操作系统、时钟频率、CPU制造商和CPU架构/指令集。

下面是将一个CTCP VERSION请求发送到运行有HexChat客户端(XChat的一个复刻)的回复:

VERSION HexChat 2.9.1  / Windows 8 

TIME

CTCP TIME请求将返回目标计算机的本地时间。决于IRC客户端,回复可能是包含日期、时间(12小时格式或24小时格式),年(例如2019)以及某种时区(例如AEST(英语:Time in Australia))。

下面是将一个CTCP TIME发送到使用ChatZilla客户端后的回复:

TIME Fri 23 Nov 2019 19:26:42 AEST

PING

CTCP PING请求将测量现有两个客户端之间的直接ping速率(不算服务器)。CTCP PING命令采用的方式是,发送一个整数参数(英语:Argument (computer science))(一个时间戳)到目标客户端,然后目标客户端提供完全相同的数字参数来响应。之后计算原始时间戳与当前时间戳的差异,将结果显示给发起的用户。在过程中通常使用毫秒级的时间戳,因为大多数用户使用的宽带互联网连接通常只有1秒以下的ping延迟。

一个CTCP PING请求的示例,从XChat客户端发送给目标:

CTCP PING 23152511

在之后,根据所获样本差异产生的结果:

相关

  • 神秘动物学隐匿动物学(英语:Cryptozoology),又称传说动物学,神秘生物学,是一种专门研究未知或传闻动物的动物学,为神秘生物学之一支(另一为隐匿植物学),主要包含两个领域:
  • 玻璃棒玻璃棒是化学实验中常见的实验室设备之一,其原料由硼硅酸盐(英语:Borosilicate glass)玻璃制成,其外型比吸管稍长,厚度也比吸管稍厚,两端外型为圆形末端。玻璃棒的功能有转移液体,搅
  • 楮又名小构树(学名:Broussonetia kazinoki)为桑科构属的植物。分布在朝鲜、台湾、日本以及中国大陆的西南、华南等地,生长于海拔200米至2,000米的地区,常生长在沟边、低山地区山
  • 乌兹别克斯坦总统乌兹别克斯坦政府与政治 系列条目乌兹别克斯坦总统是乌兹别克斯坦共和国的国家元首,乌兹别克斯坦从前苏联独立以后,于1991年实行半总统制。2016年12月14日
  • 法兰克·因克罗珀拉法兰克·P·因克罗珀拉(英语:Frank P. Incropera;1939年5月12日-)是一名美国工程师与作者。因克罗珀拉是美国印第安那州圣母大学机械工程学系的教授。身为美国机械工程师学会的成
  • 胡允恭胡允恭,字中澹,贵州石阡府籍,四川内江人,明朝政治人物,同进士出身。万历四十三年乙卯科(1615年)贵州乡试第一名举人。万历四十七年(1619年)己未科进士,三甲十三名,授推官,改教授转国子监
  • 八爪狂鲨《八爪狂鲨》(英语:)是一部2010年美国怪兽科幻恐怖电视电影,由迪克兰·欧布伦(英语:Declan O'Brien)执导,罗杰·柯曼监制,电视频道Syfy原创制作;剧情描述美国海军实验产生的恐怖杀人武
  • 永井一郎永井一郎(1931年5月10日-2014年1月27日)是日本的演员、声优、旁白。大阪府池田市出身。所属过的艺能事务所有剧团三期会、东京俳优生活协同组合、同人舍制作、东京美术职业,以及
  • 第70届奥斯卡金像奖第70届奥斯卡颁奖典礼是美国电影艺术与科学学院旨在奖励1997年最优秀电影的一场晚会,于太平洋时区1998年3月23日下午18点(北美东部时区晚上21点)在加利福尼亚州洛杉矶的神殿礼
  • 伊戈尔·伊万诺夫伊戈尔·谢尔盖耶维奇·伊万诺夫(俄语:И́горь Серге́евич Ивано́в;1945年9月23日-),俄罗斯政治人物。1998年9月30日至2004年2月24日,担任俄罗斯联邦外交部