HL.MCP.Service.UDP 2.0.9

HL.MCP.Service.UDP

MCP 框架的 UDP 服务器服务实现。

功能特性

  • UDP 服务器监听和通信
  • 可配置的协议解析器
  • MCP 服务框架集成
  • 状态分发机制
  • 支持自定义协议实现
  • 错误日志记录

安装

dotnet add package HL.MCP.Service.UDP

使用方法

基本配置

在配置文件中定义 UDP 服务参数:

<Configuration>
  <IP>127.0.0.1</IP>
  <Port>5000</Port>
  <Type>YourNamespace.YourProtocolParser, YourAssembly</Type>
</Configuration>

协议解析器

实现 IProtocolParse 接口来创建自定义协议解析器:

public class CustomProtocolParser : IProtocolParse
{
    public Message Parse(string message)
    {
        // 解析接收到的消息
        // 返回 Message 对象
    }
}

服务初始化

var udpService = new UDPService();
udpService.Initialize("config.xml");
udpService.Start();

架构说明

UDPService 继承自 MCP 框架的 AbstractService,提供以下功能:

  • Initialize: 从配置文件加载设置并初始化 UDP 服务器
  • Start: 开始监听指定的 IP 地址和端口
  • Stop: 停止 UDP 服务器
  • Release: 释放资源

接收到的消息通过配置的协议解析器处理,解析后的消息通过 MCP 的状态分发机制传递。如果未找到协议解析器,系统会记录错误日志。

依赖项

  • HL.MCP - MCP 框架核心
  • HL.UDP - UDP 通信库
  • HL.Object - 对象工厂

UDP vs TCP

选择 UDP 服务的场景:

  • 需要低延迟通信
  • 可以容忍少量数据丢失
  • 无需建立持久连接
  • 广播或多播场景

注意事项

  • Read 和 Write 方法未实现,需要使用 System.Net.Sockets.UdpClient 发送 UDP 消息
  • 确保配置的端口未被其他应用程序占用
  • 协议解析器必须正确实现 IProtocolParse 接口
  • UDP 不保证消息送达,请在应用层实现可靠性机制(如需要)

许可证

MIT License

No packages depend on HL.MCP.Service.UDP.

.NET Framework 4.6.2

Version Downloads Last updated
2.0.9 0 08/19/2026