NetPs.Socket
1.0.31029
.NET Standard 2.1
This package targets .NET Standard 2.1. The package is compatible with this framework or higher.
.NET Framework 3.5
This package targets .NET Framework 3.5. The package is compatible with this framework or higher.
dotnet add package NetPs.Socket --version 1.0.31029
NuGet\Install-Package NetPs.Socket -Version 1.0.31029
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NetPs.Socket" Version="1.0.31029" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NetPs.Socket" Version="1.0.31029" />
<PackageReference Include="NetPs.Socket" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NetPs.Socket --version 1.0.31029
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NetPs.Socket, 1.0.31029"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package NetPs.Socket@1.0.31029
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NetPs.Socket&version=1.0.31029
#tool nuget:?package=NetPs.Socket&version=1.0.31029
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
简介
NetPs基类,对原始的System.Net.Socket类进行简单封装。
其中为队列byte流提供类QueueStream类,实现了Enqueue\Dequeue。
ISocketUri增加了任意地址的解析。
该库支持提前预热来加快首次运行速度,可以通过调用方法进行使用 NetPs.Socket.Eggs.Food.Heating();
How To Use?
- 01. SocketCore
class Host : SocketCore
{
//...
}
- 02. IQueueStream
var queue = new QueueStream();
queue.Enqueue(new byte[] { 1,2,3});
var buf1 = queue.Dequeue(1); // [1]
var buf2 = queue.Dequeue(2); // [2,3]
- 03. InsideSocketUri / SocketUri (defualt use InsideSocketUri)
var uri1 = new SocketUri("[::]:1025");//IPv6Any
var uri2 = new SocketUri("0.0.0.0:1025");//Any
var uri3 = new SocketUri("[::1]:1025");//IPv6Loopback
var uri4 = new SocketUri("127.0.0.1:1025");//Loopback
!SocketUri 基于System.Uri,Linux下有可能发生ICU package not installed
.
- 04. PingClient / PingV6Client
var client = new PingClient(3000, 8192); // max wait 3 second; receive buffer 8192 byte;
var packet = new PingPacket(PingPacket.DATA_32, PingPacketKind.Request)
{
Address = InsideSocketUri.ParseIPAddress("127.0.0.1")
};
var rlt = await client.Ping(packet);
// ipv6
var v6client = new PingV6Client(3000, 8192); // max wait 3 second; receive buffer 8192 byte;
packet.Address = InsideSocketUri.ParseIPAddress("::1");
var rlt = await v6client.Ping(packet);
- 05. Security
提供了MD2\MD4\MD5\MD6、SHA0\SHA1\SHA2\SHA3、SM3加密类。
示例为SM3的一项测试。
string text, outtext;
text = "abc";
outtext = new SM3().Make(Encoding.ASCII.GetBytes(text));
Debug.Assert(outtext == "66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0");
<u>NetPs以实现现有网络协议库为目标,为数据交互提供基础支撑。</u>
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
.NET Framework | net35-cf is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETFramework 3.5 CompactFramework
- No dependencies.
-
.NETStandard 2.1
- No dependencies.