Class NetPeer
Network peer. Main purpose is sending messages to specific peer.
Inheritance
Namespace: LiteNetLib
Assembly: LiteNetLib.dll
Syntax
public class NetPeer
Fields
EndPoint
Peer ip address and port
Declaration
public readonly IPEndPoint EndPoint
Field Value
Type | Description |
---|---|
System.Net.IPEndPoint |
Id
Peer id can be used as key in your dictionary of peers
Declaration
public readonly int Id
Field Value
Type | Description |
---|---|
System.Int32 |
NetManager
Peer parent NetManager
Declaration
public readonly NetManager NetManager
Field Value
Type | Description |
---|---|
NetManager |
Statistics
Statistics of peer connection
Declaration
public readonly NetStatistics Statistics
Field Value
Type | Description |
---|---|
NetStatistics |
Tag
Application defined object containing data about the connection
Declaration
public object Tag
Field Value
Type | Description |
---|---|
System.Object |
Properties
ConnectionState
Current connection state
Declaration
public ConnectionState ConnectionState { get; }
Property Value
Type | Description |
---|---|
ConnectionState |
Mtu
Current MTU - Maximum Transfer Unit ( maximum udp packet size without fragmentation )
Declaration
public int Mtu { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Ping
Current ping in milliseconds
Declaration
public int Ping { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
RemoteTimeDelta
Delta with remote time in ticks (not accurate) positive - remote time > our time
Declaration
public long RemoteTimeDelta { get; }
Property Value
Type | Description |
---|---|
System.Int64 |
RemoteUtcTime
Remote UTC time (not accurate)
Declaration
public DateTime RemoteUtcTime { get; }
Property Value
Type | Description |
---|---|
System.DateTime |
TimeSinceLastPacket
Time since last packet received (including internal library packets)
Declaration
public int TimeSinceLastPacket { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Methods
Disconnect()
Declaration
public void Disconnect()
Disconnect(NetDataWriter)
Declaration
public void Disconnect(NetDataWriter writer)
Parameters
Type | Name | Description |
---|---|---|
NetDataWriter | writer |
Disconnect(Byte[])
Declaration
public void Disconnect(byte[] data)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data |
Disconnect(Byte[], Int32, Int32)
Declaration
public void Disconnect(byte[] data, int start, int count)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | |
System.Int32 | start | |
System.Int32 | count |
GetMaxSinglePacketSize(DeliveryMethod)
Gets maximum size of packet that will be not fragmented.
Declaration
public int GetMaxSinglePacketSize(DeliveryMethod options)
Parameters
Type | Name | Description |
---|---|---|
DeliveryMethod | options | Type of packet that you want send |
Returns
Type | Description |
---|---|
System.Int32 | size in bytes |
GetPacketsCountInReliableQueue(Byte, Boolean)
Returns packets count in queue for reliable channel
Declaration
public int GetPacketsCountInReliableQueue(byte channelNumber, bool ordered)
Parameters
Type | Name | Description |
---|---|---|
System.Byte | channelNumber | number of channel 0-63 |
System.Boolean | ordered | type of channel ReliableOrdered or ReliableUnordered |
Returns
Type | Description |
---|---|
System.Int32 | packets count in channel queue |
Send(NetDataWriter, DeliveryMethod)
Send data to peer (channel - 0)
Declaration
public void Send(NetDataWriter dataWriter, DeliveryMethod deliveryMethod)
Parameters
Type | Name | Description |
---|---|---|
NetDataWriter | dataWriter | DataWriter with data |
DeliveryMethod | deliveryMethod | Send options (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
Send(NetDataWriter, Byte, DeliveryMethod)
Send data to peer
Declaration
public void Send(NetDataWriter dataWriter, byte channelNumber, DeliveryMethod deliveryMethod)
Parameters
Type | Name | Description |
---|---|---|
NetDataWriter | dataWriter | DataWriter with data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Send options (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
Send(Byte[], DeliveryMethod)
Send data to peer (channel - 0)
Declaration
public void Send(byte[] data, DeliveryMethod deliveryMethod)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
DeliveryMethod | deliveryMethod | Send options (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
Send(Byte[], Byte, DeliveryMethod)
Send data to peer
Declaration
public void Send(byte[] data, byte channelNumber, DeliveryMethod deliveryMethod)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Send options (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
Send(Byte[], Int32, Int32, DeliveryMethod)
Send data to peer (channel - 0)
Declaration
public void Send(byte[] data, int start, int length, DeliveryMethod options)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
System.Int32 | start | Start of data |
System.Int32 | length | Length of data |
DeliveryMethod | options | Send options (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
Send(Byte[], Int32, Int32, Byte, DeliveryMethod)
Send data to peer
Declaration
public void Send(byte[] data, int start, int length, byte channelNumber, DeliveryMethod deliveryMethod)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
System.Int32 | start | Start of data |
System.Int32 | length | Length of data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Delivery method (reliable, unreliable, etc.) |
Exceptions
Type | Condition |
---|---|
TooBigPacketException | If size exceeds maximum limit: MTU - headerSize bytes for Unreliable Fragment count exceeded ushort.MaxValue
|
SendWithDeliveryEvent(NetDataWriter, Byte, DeliveryMethod, Object)
Send data to peer with delivery event called
Declaration
public void SendWithDeliveryEvent(NetDataWriter dataWriter, byte channelNumber, DeliveryMethod deliveryMethod, object userData)
Parameters
Type | Name | Description |
---|---|---|
NetDataWriter | dataWriter | Data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Delivery method (reliable, unreliable, etc.) |
System.Object | userData | User data that will be received in DeliveryEvent |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | If you trying to send unreliable packet type
|
SendWithDeliveryEvent(Byte[], Byte, DeliveryMethod, Object)
Send data to peer with delivery event called
Declaration
public void SendWithDeliveryEvent(byte[] data, byte channelNumber, DeliveryMethod deliveryMethod, object userData)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Delivery method (reliable, unreliable, etc.) |
System.Object | userData | User data that will be received in DeliveryEvent |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | If you trying to send unreliable packet type
|
SendWithDeliveryEvent(Byte[], Int32, Int32, Byte, DeliveryMethod, Object)
Send data to peer with delivery event called
Declaration
public void SendWithDeliveryEvent(byte[] data, int start, int length, byte channelNumber, DeliveryMethod deliveryMethod, object userData)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | data | Data |
System.Int32 | start | Start of data |
System.Int32 | length | Length of data |
System.Byte | channelNumber | Number of channel (from 0 to channelsCount - 1) |
DeliveryMethod | deliveryMethod | Delivery method (reliable, unreliable, etc.) |
System.Object | userData | User data that will be received in DeliveryEvent |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | If you trying to send unreliable packet type
|