IPPROTO_TCP 和 IPPROTO_IP代表两种不同的协议,分别代表
IP协议族里面的
TCP协议和IP协议
用途简介
int socket(int domain, int type, int protocol);
的第三个参数
这里指使用tcp协议
根据
include/winsock2.h文件
有以下定义
/*
* Protocols
*/
#define IPPROTO_IP 0 /* dummy for IP */
#define IPPROTO_ICMP 1 /* control message protocol */
#define IPPROTO_IGMP 2 /* internet group management protocol */
#define IPPROTO_GGP 3 /* gateway^2 (deprecated) */
#define IPPROTO_TCP 6 /* tcp */
#define IPPROTO_PUP 12 /* pup */
#define IPPROTO_UDP 17 /* user datagram protocol */
#define IPPROTO_IDP 22 /* xns idp */
#define IPPROTO_ND 77 /* UNOFFICIAL net disk proto */
#define IPPROTO_RAW 255 /* raw IP packet */
#define IPPROTO_MAX 256
所以 参数protocol用来指定socket所使用的
传输协议编号可以有以上几种
示范代码
clientSocket=socket(
AF_INET,SOCK_STREAM,IPPROTO_TCP);