原文地址:http://blog.csdn.net/dingkun520wy/article/details/49201245網絡
(一)Socket(套接字)UDP協議的特色socket
一、是基於無鏈接的協議,沒有生成鏈接的延遲因此速度比TCP快;spa
二、支持一對一和一對多鏈接,能夠使用廣播的方式多地址發送;.net
三、與Tcp的報頭比是8:20,因此UDP消耗的網絡帶寬少;code
四、傳輸的數據有消息邊界,Tcp沒有;blog
(二)發送ci
//定義發送字節區 byteSendingArray = new byte[100]; //定義網絡地址 iep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1001); //建立socket socketClient = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); //發送數據 EndPoint ep = (EndPoint)iep; string strMsg = "要發送的數據"; //字節轉換 byteSendingArray = Encoding.Default.GetBytes(strMsg); //發送 socketClient.SendTo(byteSendingArray, ep);
(三)接收
字符串
//定義接受數據區 byteArray_Receive = new byte[100]; //定義網絡地址 iep_Recieve = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1001); //建立socket socketServer = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); //綁定地址 socketServer.Bind(iep_Recieve); //接受數據 EndPoint ep = (EndPoint)iep_Recieve; //接收到數據 int intReceiveLength = socketServer.ReceiveFrom(byteArray_Receive, ref ep); //轉換數據爲字符串 string strReceiveStr = Encoding.Default.GetString(byteArray_Receive, 0, intReceiveLength);