敬业的IT人 >> 网络技术 >> 网络协议 >> 透析ICMP协议(2): Windows Socket 简介

透析ICMP协议(2): Windows Socket 简介

敬业的IT人 互联网 佚名 2008-3-20 9:05:19

  简介:

  -------

  Windows 的Socket函数有许多, 我没有做详细介绍, 这里的函数都是简要说明其用途, 详细用法请参考MSDN.

  这里的主要目的是为了后面的三个应用服务.

  函数说明:

  ---------

  WSAStartup函数

  初始化Winsock

  [声明]

  int WSAStarup(WORD wVersionRequested,LPWSADATA lpWSAData);

  [参数]

  wVersionRequested - 要求使用Winsock的最低版本号

  lpWSAData - Winsock的详细资料

  [返回值]

  当函数成功调用时返回0

  失败时返回非0的值

  ---

  socket函数

  用于生成socket(soket Descriptor)

  [声明]

  SOCKET socket(int af,int type,int protocol);

  [参数]

  af - 地址家族(通常使用:AF_INET)

  type - socket的种类

  SOCK_STREAM : 用于TCP协议

  SOCK_DGRAM : 用于UDP协议

  protocol - 所使用的协议

  [返回值]

  当函数成功调用时返回一个新的SOCKET(Socket Descriptor)

  失败时返回INVALID_SOCKET.

  ---

  inet_addr函数

  地址转换, 把"A.B.C.D"的IP地址转换为32位长整数

  [声明]

  unsigned long inet_addr ( const char FAR *cp );

  [参数]

  cp - 指向IP地址字符串的指针

  [返回值]

  当函数成功调用时返回用32位整数表示的IP地址

  失败时返回INADDR_NONE.

  ---

  gethostbyname函数

  从主机名获取主机信息.

  [声明]

  struct hostent FAR * gethostbyname ( const char FAR *name );

  [参数]

  name - 指向主机名字符串的指针

  [返回值]

  当函数成功调用时返回主机信息

  失败时返回NULL(空值)

  ---

  recv函数

  利用Socket进行接受数据.

  [声明]

  int recv ( SOCKET s , char FAR *buf , int len , int flags );

  [参数]

  s - 指向用Socket函数生成的Socket Descriptor

  buf - 接受数据的缓冲区(数组)的指针

  len - 缓冲区的大小

  flag - 调用方式(MSG_PEEK 或 MSG_OOB)

  [返回值]

  成功时返回收到的字节数.

  如果连接被中断则返回0

  失败时返回 SOCKET_ERROR

  ---

  sendto函数

  发送数据.

  [声明]

  int sendto ( SOCKET s , const char FAR *buf , int len , int flags , const struct sockaddr FAR *to , int token );


    
[下载]网吧培训与解决方案.pdf
[下载]华为AR18路由器配置实例.pdf
[下载]Cisco 官方配置范例 PDF 合集
[下载]CISCO路由器配置手册
[下载]CCNA-CCNP考试命令总结.rar
[下载]华为ADSL Modem MT800内置路由功能设 
华为认证工程师HCNE培训资料
Cisco交换机、路由器密码恢复方法(精 
[下载]MSR典型配置实例V1.0
[下载]华为MA5200F手册
[下载]华为MA5200典型配置
[华为技术]华为8850配置文档
华为认证网络工程师题库(中文版)
[网络工程]中国电信CN2网络工程培训

  [参数]

  s - 指向用Socket函数生成的Socket Descriptor

  buf - 接受数据的缓冲区(数组)的指针

  len - 缓冲区的大小

  flag - 调用方式(MSG_DONTROUTE , MSG_OOB)

  to - 指向发送方SOCKET地址的指针

  token - 发送方SOCKET地址的大小

  [返回值]

  成功时返回已经发送的字节数.

  失败时返回SOCKET_ERROR


    
粤ICP备06119539号
Copyright CiscoSky.Org,Some Rights Reserved.
Email:me1228#tom.com