UDP協議使用無連接的套接字,無連接的套接字不需要在網絡設置之間發送連接信息。因此,很難確定誰是服務器誰是客戶機。如果一設備最初是在等待遠程設置的信息,則套接字就必須用Bind方法綁定到一個本地地址/端口對上。完成綁定之後,該設備就可以利用套接字接收數據了。由於客戶機設備沒有一個建立到服務器地址的連接,所以UDP客戶不需要Connect方法。
UDP服務器 UDP客戶機
Socket() Socket()
Bind() Bind()
ReceiveFrom()ß SendTo()
SendTo() ReceiveFrom()
Close() Close()
由于不存在確定的連接,所以可以直接使用SendTo方法和ReceiveFrom方法發送和接收數據。在兩個設備之間的通信結束後,可以像TCP中使用的方法一樣,對套接字使用Shutdown和Close方法。必須使用Bind將套接字綁定到一個地地址/端口 對上后才能使用ReceiveFrom方法接收數據,如果只發送而不接收,則不需要使用Bind