基于 TCP 套接字通信.ppt

基于 TCP 套接字通信.ppt

ID:48193402

大小:494.50 KB

页数:20页

时间:2020-01-15

基于 TCP 套接字通信.ppt_第1页
基于 TCP 套接字通信.ppt_第2页
基于 TCP 套接字通信.ppt_第3页
基于 TCP 套接字通信.ppt_第4页
基于 TCP 套接字通信.ppt_第5页
资源描述:

《基于 TCP 套接字通信.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于TCP套接字通信基于TCP套接字通信套接字存在于通信域中,通信域也叫地址簇,它是一个抽象的概念,主要用于将通过套接字通信的进程的共有特性,综合在一起,套接字通常只与同一区域的套接字交换数据,(也可能跨区通信,但这只是在执行某种转换进程后才能实现).WindowsSockets只支持一个通信域,网际域(AF_INET),这个域被使用网际协议簇通信进程使用SOCK_STREAM    流式套接字,提供面向连接的数据传输服务,数据无差错,无重复的发送,并且按发送顺序接送,流式套接字实际上是基于TCP实现的网络字节顺序(套接

2、字与地址簇中使用)由于不同的计算机存放数据字节的顺序不同,所以通信双方必须协商出统一的存放字节顺序,这样才能发送方的数据可以被接收方准确无误的读取,否则接收方读到的是一堆不知名的数据,所以通信前双方必须协商统一的用网络字节顺序,保证通信的正常进行基于TCP套接字通信在TCP/IP网络中两个进程间的相互作用的主机模式是客户机/服务器模式(Client/Servermodel)。该模式的建立基于以下两点:1、非对等作用;2、通信完全是异步的。客户机/服务器模式在操作过程中采取的是主动请示方式:首先服务器方要先启动,并根据请示

3、提供相应服务:(过程如下)1、打开一通信通道并告知本地主机,它愿意在某一个公认地址上接收客户请求。2、等待客户请求到达该端口。3、接收到重复服务请求,处理该请求并发送应答信号。4、返回第二步,等待另一客户请求5、关闭服务器。客户方:1、打开一通信通道,并连接到服务器所在主机的特定端口。2、向服务器发送服务请求报文,等待并接收应答;继续提出请求……3、请求结束后关闭通信通道并终止。基于TCP套接字通信流程图基于TCP套接字通信创建套接字SOCKETsocket(intaf,inttype,intprotocol);af:指

4、定地址簇,对于TCP/IP协议的套接字,它只能写成AF_INET(或PF_INET)type:指定套接字类型,它只支持两种套接字,SOCK_STREAM(流式套接字),SOCK_DGRAM(数据报式套接字)protocol:指定与特定地址家族相关的协议,如果指定为0,那么系统就会根据地址格式和套接字类别,自动选择一个合适的协议SOCKETsockSrv=socket(AF_INET,SOCK_STREAM,0);基于TCP套接字通信SOCKADDR_INaddrSrv;//定义套接字地址结构addrSrv.sin_add

5、r.S_un.S_addr=htonl(INADDR_ANY);//设置本地计算机的IP地址,一般INADDR_ANY在程序运行时会自动计算成本地的IP地址的,表示服务器能接收来自任何计算机的请求addrSrv.sin_family=AF_INET;//设置网络通信的网络协议族类型addrSrv.sin_port=htons(4000);//设置本地(这里指服务端)计算机要打开的端口addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");//设置远程计算机的IP地址基于TC

6、P套接字通信将套接字绑定到端口上bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));将套接字设置为监听模式listen(sockSrv,5);5表示最大连接数量}建立套接字连接――connect()和accept()//等待客户请求来到,当请求来到时候,接受请求,接受连接请求,返回一个新的对应于此连接套接字SOCKADDR_INaddrClient;intlen=sizeof(SOCKADDR);SOCKETsClient=0;charsendText[256];//开始

7、监听cout<<"等待用户连接"<

8、iveText,256,0);关闭本次连接的通道closesocket(sClient);closesocket(sockSrv);//关闭服务器套接字WSACleanup();//结束套接字库的调用system("pause");程序代码服务器端#include#include

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。