1 / 30
文档名称:

《第14章winsock网络通信开发》.pdf

格式:pdf   大小:649KB   页数:30页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《第14章winsock网络通信开发》.pdf

上传人:qucheng26364 2021/5/12 文件大小:649 KB

下载得到文件列表

《第14章winsock网络通信开发》.pdf

相关文档

文档介绍

文档介绍:第 14 章 WinSock 网络通信开发
Windows应用程序可以实现无限的网络功能,这些功能都建立在WinSock接口的基础上。
WinSock是Windows Sockets的简称,也称为Windows套接字,是微软根据BSD UNIX操作系统
中流行的Berkeley套接字规范而实现的一套Windows系统环境下的网络编程接口。
本章将具体介绍在Visual C++中,基于Winsock接口进行网络通信程序开发的基础知识。
网络通信与 WinSock 基础
网络通信是指应用程序与网络中其他系统的应用程序之间进行的通讯。在介绍网络通信
程序的开发之前,首先简单介绍一下网络通信和WinSock的基本概念。
WinSock 的基本概念
Windows环境下网络编程的规范——Windows Sockets(简称WinSock)是Windows环境
下应用广泛的、开放的、支持多种协议的网络编程接口。经过不断完善,在Intel、Microsoft、
Sun、SGI、Informix、Novell等公司的全力支持下,它已成为Windows网络编程事实上的标准
规范。
Windows Sockets规范用于提供给应用程序开发者一套简单的API,并让各家网络软件供
应商共同遵守。任何能够与WinSock兼容实现协同工作的应用程序就被认为是具有WinSock
接口,并称这种应用程序为WinSock应用程序。WinSock规范定义并记录了如何使用API与
Internet协议族(IPS,通常指的是TCP/IP)连接。尤其要指出的是,所有的WinSock实现都支
持流套接字和数据报套接字。
应用程序通过调用WinSock提供的API实现相互之间的通讯,而WinSock又利用下层的网
络通讯协议功能和操作系统调用实现实际的通讯工作。
在ISO的OSI网络7层协议中,WinSock主要负责控制数据的输入和输出,也就是传输层和
网络层。它屏蔽了数据链路层和物理层,给Windows环境下的网络编程带来了巨大的变化。
TCP/IP 协议与 WinSock
Internet建立在TCP/IP协议基础之上,采用了TCP/IP的网络体系结构。TCP/IP不是一个简
单的协议,而是一组小的、专业化的协议,包括TCP、IP、UDP、ARP、ICMP以及其他的一
些被称为子协议的协议。大部分网络管理员将整组协议称为TCP/IP,有时简称为IP。其中的
几个重要协议介绍如下。
y 266 y
第 14 章 Winsock 网络通信开发
‰ TCP(Transmission Control Protocol,传送控制协议):提供给用户进程可靠的全
双工字节流面向连接的协议,主要为用户进程提供虚电路服务,并为数据可靠传
输建立检查机制。大多数网络通信程序使用TCP。
‰ UDP(User Datagram Protocol,用户数据报协议):提供给用户进程的无连接协议,
用于传送数据而不执行正确性检查。
‰ IP(Internet Protocol,网间协议):负责主机间数据的路由和网络上数据的存储,
同时为ICMP、TCP、UDP提供分组发送服务。用户进程通常不会涉及这一层。
TCP/IP协议的核心部分是传输层协议(TCP、UDP)、网络层协议(IP)和物理接口层。
这三层通常是在操作系统内核中实现的,因此用户一般不涉及。
编程界面一般有两种形式:一是由内核心直接提供的系统调用;二是使用以库函数方式提
供的各种函数。前者为核内实现,后者为核外实现。用户服务要通过核外的应用程序才能实现,
所以要使用套接字(WinSock)来实现。TCP/IP协议核心与应用程序的关系如图14-1所示。
应用程序 1 应用程序 2
网络编程界面,例如 Windows Sockets
网络通讯协议服务界面,例如 TCP/IP