实验基于网络通信协议的设计.ppt





《实验基于网络通信协议的设计.ppt》由会员分享,可在线阅读,更多相关《实验基于网络通信协议的设计.ppt(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验三三基于网基于网络通信通信协议的的设计一、实验目的一、实验目的了解通信协议的基本工作原理了解通信协议的基本工作原理了解了解Winsock的编程方法的编程方法设计一个简单基于通信协议的应用程序设计一个简单基于通信协议的应用程序二、实验说明二、实验说明InternetInternet是国际性的通信网络的集合体,它集是国际性的通信网络的集合体,它集现代通信技术和现代计算机技术于一体,是计现代通信技术和现代计算机技术于一体,是计算机之间进行国际信息交流和实现资源共享的算机之间进行国际信息交流和实现资源共享的良好手段。良好手段。InternetInternet提供各种各样的服务:提供各种各样的服务:
2、TelnetTelnet、FTPFTP、电子邮件、网络新闻服务、文档查询索引服务电子邮件、网络新闻服务、文档查询索引服务及其它信息服务。及其它信息服务。InternetInternet上信息传递基于上信息传递基于TCP/IPTCP/IP(传输控制协传输控制协议议/互联网协议)协议。互联网协议)协议。网络编程网络编程WindowsWindows网络编程网络编程UNIXUNIX网络编程网络编程JAVAJAVA网络编程网络编程WebWeb客户客户/服务器端编程服务器端编程WindowsWindows网络编程网络编程WindowsWindows环境下的环境下的InternetInternet编程主要是
3、进行编程主要是进行SocketsSockets编程。编程。WinsockWinsock是是Microsoft WindowsMicrosoft Windows提供的网络编程提供的网络编程接口,它提供了基于接口,它提供了基于TCP/IPTCP/IP协议的接口实现方协议的接口实现方法。法。TCP/IPTCP/IP的结构的结构通过网路进行数据通信,需要用地址来标识网路中的通过网路进行数据通信,需要用地址来标识网路中的主机,这样才能保证数据正确的发送到主机。主机,这样才能保证数据正确的发送到主机。TCP/IP协议使用协议使用IP地址作为网络中主机的标识,而且每台主地址作为网络中主机的标识,而且每台主机
4、的机的IP地址是唯一的,从而实现通过地址是唯一的,从而实现通过IP地址建立彼此地址建立彼此之间的联系。通常情况下,由于每台主机上运行不止之间的联系。通常情况下,由于每台主机上运行不止一个应用程序,所以为使应用程序间建立连接,还需一个应用程序,所以为使应用程序间建立连接,还需要一个地址标识。在要一个地址标识。在TCP/IP协议中使用端口(协议中使用端口(Port)来作为主机上运行的应用程序的标识号。因此,来作为主机上运行的应用程序的标识号。因此,TCP/IP协议中一个有效的网络地址包括协议中一个有效的网络地址包括IP地址和端口地址和端口地址。地址。TCP/IPTCP/IP协议提供两种同其它主机进
5、行通信的协议提供两种同其它主机进行通信的方式:方式:TCPTCP方式和方式和UDPUDP方式方式TCPTCP方式:方式:是一种面向连接的服务,它在两个主机是一种面向连接的服务,它在两个主机间建立连接,提供双向、有序且无重复的数据流间建立连接,提供双向、有序且无重复的数据流服务,以及流量控制、差错检测和纠错等服务,服务,以及流量控制、差错检测和纠错等服务,保证数据的可靠传输。保证数据的可靠传输。UDPUDP方式:方式:是一种双向的无连接数据服务,它把数是一种双向的无连接数据服务,它把数据发送出去但并不进行差错控制和检查,所以不据发送出去但并不进行差错控制和检查,所以不能保证数据可靠性,因而用于少
6、量数据的传输。能保证数据可靠性,因而用于少量数据的传输。三、实验内容三、实验内容利用利用Winsock控件编写控件编写TCP应用程序或者应用程序或者UDP应用程序。应用程序。WinsockWinsock简介简介WinsockWinsock控件属性控件属性BytereceivedBytereceived 接受到的数据字节数接受到的数据字节数LocalHostNameLocalHostName 本地主机名本地主机名 LocalIPLocalIP 本地本地IPIP地址地址LocalPortLocalPort 本地机器通信程序的端口本地机器通信程序的端口RemoteHostRemoteHost 远程机
7、器名远程机器名RemoteHostIPRemoteHostIP 远程机器的远程机器的IPIP地址地址RemotePortRemotePort 远程通信端口地址远程通信端口地址SocketHandleSocketHandle 提供给调用提供给调用Winsock APIWinsock API的句柄参数的句柄参数State State 连接的当前状态连接的当前状态Protocol Protocol 设置使用的协议设置使用的协议TCPTCP或或UDPUDPStateState连接状态连接状态StateState常数常数 值值 描述描述 sckclosedsckclosed 0 0 关闭状态关闭状态 s
8、ckopensckopen 1 1 打开状态打开状态 scklisteningscklistening 2 2 监听状态监听状态 sckconnectionsuspendingsckconnectionsuspending 3 3 连接挂起连接挂起 sckresolvinghostsckresolvinghost 4 4 解析域名解析域名 sckconnetingsckconneting 5 5 正在连接正在连接 sckconnectedsckconnected 6 6 已建立连接已建立连接 sckclosingsckclosing 7 7 正在关闭正在关闭 sckerrorsckerror
9、8 8 出错出错WinsockWinsock控件方法控件方法AcceptAccept方法方法 用于接收一个连接请求。在用用于接收一个连接请求。在用TCPTCP建立连接时,当有连建立连接时,当有连接请求到来就用此方法接受请求以建立连接。接请求到来就用此方法接受请求以建立连接。调用格式:调用格式:winsockwinsock对象对象.Accept Request ID.Accept Request IDBindBind方法方法 在存在多协议接口卡的情况下,用此方法把接口卡和在存在多协议接口卡的情况下,用此方法把接口卡和IPIP地址捆绑在一起。地址捆绑在一起。调用格式:调用格式:winsockwin
10、sock对象对象.Bind.Bind 端口号,端口号,IPIP地址地址CloseClose方法方法 关闭一个关闭一个TCPTCP连接。调用格式:连接。调用格式:winsockwinsock对象对象.close.closeConnectConnect方法方法 用于向远程主机发出连接请求。用于向远程主机发出连接请求。调用格式:调用格式:winsockwinsock对象对象.connect.connect远程主机远程主机IP,IP,远程端口远程端口 GetDataGetData和和PeekDataPeekData方法方法 都是用来取得接收到的数据。都是用来取得接收到的数据。GetDataGetDat
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 基于 网络 通信协议 设计

限制150内