如何制作只能给udp使用的协议

我希望做的是使用worke实例化时,使用我自定义的协议,直接监听udp端口.
手册上在介绍自定义协议时没有介绍该协议是在tcp下使用的还是udp下使用的,而我在看内置的协议时,发现有的协议指定连接必须是tcp对象,有的是连接的抽象对象,有的没有指定,如图,从上到下依次是text,ws,websocket.

,
如果我自定义的协议只能给udp使用,是不是要用udp的类做连接.
还是说无论协议如何定制,想实现tcp或者udp的指定,都必须用worker的transport属性指定.
 
已邀请:

blogdaren - 乐于分享的PHP码农【http://www.blogdaren.com】

赞同来自: augushong

1. 定制的协议属于应用层协议,  tcp 或 udp属于传输层协议,不是一个概念
2. 想实现tcp或者udp,比如udp,方法有两种:
写法1:
new Worker('自定义协议://0.0.0.0:9999');  
$worker->transport = 'udp';
写法2:
new Worker('udp://0.0.0.0:9999');  
$worker->protocol = '自定义协议';

keytehu

赞同来自: augushong

协议部分tcp和udp是通用的,udp的时候connection是udp连接对象,tcp的时候connection是tcp连接对象。这个我研究过

要回复问题请先登录注册