一.课程设计目的: 1、掌握 TCP/IP协议的工作原理
2、实现套接字网络编程
二.课程设计内容: 1、理解 TCP/IP协议通信方服务器的工作过程
2、理解 TCP/IP协议通信方客户机的工作过程
3、编程实现网络通信
三.套接字网络编程: 1、套接字简介:套接字,是支持 TCP/IP的网络通信的基本操作单元,可以看做是不同主机之间的进程进行双向通信的端面点,简单的说就是通信的两方的一种约定,用套接字中的相关函数来完成通信过程 2、套接字基本概念:要通过 Internet进行通信,至少需要一对套接字,其中一个运行在客户端,称之为 ClientSocket,另一个运行于服务器端面,称为 ServerSocket
根据连接启动的方式以及本地要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听、客户端请求、连接确认
服务器监听是指服务端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态
客户端请求是由客户端的套接字提出连接请求,要连接的目标是服务器端套接字
为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器套接字的地址和端口号,然后再向服务器端套接字提出连接请求
连接确认是当服务器端套接字监听到或者说接收到客户端套接字的连接请求时,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的信息发送给客户端,一旦客户端确认了此连接,连接即可建立
而服务器端继续处于监听状态,继续接收其他客户端的连接请求
3、服务端和客户端工作方式如图: 4、客户端和服务端具体实现步骤: 客户端:客户端程序包括程序文件 client
asm和资源文件client
资源文件确定了客户端的界面形式
①它先调用函数初始化 WinSock库
②当用户输入 IP并点击连接按钮后,使用 Socket函数创建流套接字,使用 W