可以通過調用Socket對象的SetSocketOption方法設定通訊端的各種選項,它有3種重載的形式:
public void SetSocketOption(SetSocketOptionLevel sl,SocketOptionName sn,byte[]value)
public void SetSocketOption(SetSocketOptionLevel sl,SocketOptionName sn,int value)
public void SetSocketOption(SetSocketOptionLevel sl,SocketOptionName sn,object value)
其中sl定義通訊端選項的類型,可選類弄有IP、Socket、Tcp、Udp。
sn指定通訊端選項的值,常用的選項值。
| SocketOptionLevel |
SocketOptionName |
說明 |
| IP |
HeaderIncluded |
指出發送到通訊端的資料將包括IP頭 |
| IP |
IPOptions |
指定IP選項用於輸出包中 |
| IP |
MulticastInterface |
設定組播包使用的連接埠 |
| IP |
MultiLookBack |
IP組播回送 |
| IP |
PacketInformation |
返回關於接收包的資訊 |
| IP |
UnBlockSource |
設定通訊端為無阻塞模式 |
| Socket |
AcceptConnection |
如果為真,表時通訊端正在偵聽 |
| Socket |
Broadcast |
如果為真,表時允許在通訊端上發送廣播訊息 |
| Socket |
MaxConnections |
設定使用的最大隊列長度 |
| Socket |
ReceiveBuffer |
接收通訊端的緩衝大小 |
| Socket |
ReceiveTimeout |
接收通訊端的逾時時間 |
| Socket |
SendBuffer |
發送通訊端的緩衝大小 |
| Socket |
SendTimeout |
發送通訊端的逾時時間 |
| Socket |
UseLookback |
使用回傳 |
| Udp |
NoDelay |
為發送合并禁用Nagle演算法 |
| Udp |
ChecksumConverage |
設定或擷取UDP校正和覆蓋 |
| Udp |
NoChecksum |
發送校正和設定為零的UDP資料報 |
使用方法:
s.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.SendTimeout,1000);