- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
接口课设模板封面
《接口技术》课程设计报告
题目:网络双机通讯
学 院 信息工程学院 专 业 计算机科学与技术
班 级 学 号 09 11
学生姓名 吴涛 尹泽楠 指导教师 马荣贵
课程成绩 完成日期 2011年6月21 日
题目: 网络双机通讯
设计功能
1.使用WinSock编程,实现网络双机通讯。
2.在实现通讯的基础上编写程序,实现文本数据的交换。
设计原理及原理图
1、什么是socket
所谓socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求。
Socket接口是TCP/IP网络的API,socket接口定义了许多函数或例程,程序员可以用他们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解socket接口。Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解socket了。网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用socket(),该函数返回一个整型的socket描述符,随后的连接建立、数据传输等操作都是通过该socket实现的。
常用的socket类型有两种:流式socket和数据报式socket。流式是一种面向连接的socket,针对于面向连接的TCP服务应用;数据报式socket是一种无连接的socket,对应于无连接的UDP服务应用。
最重要的是,socket是面向客户/服务器模型而设计的,针对客户和服务器程序提供不同的socket系统调用。客户随机申请一个socket,系统为之分配一个socket号;服务器拥有全局公认的socket,任何客户都可以向他发出连接请求和信息请求。
Socket利用客户/服务器模式巧妙地解决了进程之间建立通信连接的问题。服务器socket半相关为全局所公认非常重要。不妨考虑一下,两个完全随机的用户进程之间是如何建立通信?假如通信双方没有任何一方的socket固定,就好像打电话的双方彼此不知道对方的电话号码,要通话是不可能的。
2、WinSocket的通信原理
WinSocket是一个基于socket模型的API。WinSocket一般由两部分组成:开发组件和运行组件。开发组件是供程序员在windows环境下开发网络应用程序使用的,它包括应用程序接口库函数、头文件和实现的文档,其中最主要的是WinSock.h运行组件是以动态链接库来实现socket接口的。文件名为winsock.dll,应用程序在执行时装入它就能实现网络通信功能。
程序流程图
源程序
//================NetPCC.cpp======================
#pragma comment(lib,ws2_32.lib) //载入WS2_32.lib
#includewinsock2.h
#includeiostream
#includefstream
#includestring
using namespace std;
//================================================
int TCPS();
int TCPC();
//===============主界面===========================
int main(){
int iselect=0;
while(1){
system(cls);
cout****************************************************\n
** **\n
** 网络双机通讯 **\n
** 08级计算机4班 **\n
** 吴涛2402080409 尹泽楠2402080411 **\n
** **\n
****************************************************\n\n
1.服务端(TCPServer) 2
文档评论(0)