首页 / 软件开发 / C# / socket编程学习笔记(1), Unix Socket和Windows Socket
socket编程学习笔记(1), Unix Socket和Windows Socket2011-03-12 cnblogs codeone1,关于Unix Socket1.1 什么是Socket?Socket是网络文件描述符。在基于Socket的编程技术中,用户不直接访问发送和接收包的网络接口设备,而是建立一个中间文件描述符来处理编程接口到网络的操作。1.2 Socket包括哪些内容?一个特殊的通信域,比如一个网络连接一个特殊的通信类型,比如流或者数据报一个特殊的协议,比如TCP或者UDP1.3 Unix的Socket() C函数详细说明:int socket(int domain, int type, int protocol)domain的取值:PF_UNIX Unix IPC通信PF_INET IPV4通信PF_INET6IPV6PF_IPX Novell IPXPF_NETLINKKernel用户接口驱动程序PF_X25 X.25PF_AX25PF_ATMPVCATM PVCPF_APPLETALKAppleTalk协议PF_PACKET低级包接口type的取值:SOCK_STREAM使用面向连接的通信包SOCK_DGRAM使用无连接的通信包SOCK_SEQPACKET使用有固定最大长度的面向连接的通信包SOCK_RAW使用原IP包SOCK_RDM使用不保证次序的可靠数据报Protocol:一般使用与type对应的默认协议,用0表示。例如: int newsocket = socket(PF_INET, SOCK_STREAM, 0 );//使用TCP