基於連接與無連接
對系統資源的要求(TCP較多,UDP少)
UDP程序結構較簡單
流模式與數據報模式
TCP保證數據正確性,UDP可能丟包
TCP保證數據順序,UDP不保證
部分滿足以下幾點要求時,應該采用UDP 面向數據報方式 網絡數據大多為短消息
擁有大量Client
對數據安全性無特殊要求
網絡負擔非常重,但對響應速度要求高
具體編程時的區別 socket()的參數不同
UDP Server不需要調用listen和accept
UDP收發數據用sendto/recvfrom函數
TCP:地址信息在connect/accept時確定
UDP:在sendto/recvfrom函數中每次均 需指定地址信息
UDP:shutdown函數無效
二、man----socket
通過查看socket的man手冊可以看到socket函數的第壹個參數的值可以為下面這些值:
Name Purpose
PF_UNIX, PF_LOCAL Local communication
PF_INET IPv4 Internet protocols
PF_INET6 IPv6 Internet protocols
PF_IPX IPX - Novell protocols
PF_NETLINK Kernel user interface device
PF_X25 ITU-T X.25 / ISO-8208 protocol
PF_AX25 Amateur radio AX.25 protocol
PF_ATMPVC Access to raw ATM PVCs
PF_APPLETALK Appletalk
PF_PACKET Low level packet interface