c#基于tcp的客户端服务器通信

c#基于tcp的客户端服务器通信

ID:3663365

大小:563.50 KB

页数:24页

时间:2017-11-22

c#基于tcp的客户端服务器通信_第1页
c#基于tcp的客户端服务器通信_第2页
c#基于tcp的客户端服务器通信_第3页
c#基于tcp的客户端服务器通信_第4页
c#基于tcp的客户端服务器通信_第5页
资源描述:

《c#基于tcp的客户端服务器通信》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、《高级网络程序设计》课程设计报告题目基于TCP的局域网即时消息系统的客户端和服务器端的设计与实现学号姓名计算机网络工程教研室2016年01月11日21目录一、课程设计内容………………………………………..2二、设计目的……………………………………………..2三、设计步骤……………………………………………..2四、具体要求………………………………………….....3五、实验代码…………………………………………….3六、实验结果……………………………………..……20七、参考文献…………………………………

2、…..……22八、实验心得……………………………………..……2221一、课程设计内容1.Winsock的启动与终止。2.Winsock的创建及绑定和关闭。3.建立通信连接listen及accept和connect。4.数据的传输。5.简单的客户机/服务器之间的通信。二、设计目的1.熟悉WindowsSocket的常用函数的形式和使用方法,理解数据通信的过程。2.掌握如何利用C#进行TCP协议开发,完成基于TCP的局域网即时消息系统的客户端和服务器端的设计与实现。三、设计步骤在TCP/IP网络中两个进

3、程间的相互作用的主机模式是客户机/服务器模式(Client/Servermodel)。该模式的建立基于以下两点:(1)非对等作用;(2)通信完全是异步的。客户机/服务器模式在操作过程中采取的是主动请示方式:1、首先服务器方要先启动,并根据请示提供相应服务,其过程如下:(1)打开一通信通道并告知本地主机,它愿意在某一个公认地址上接收客户请求。(2)等待客户请求到达该端口。(3)接收到重复服务请求,处理该请求并发送应答信号。(4)返回第二步,等待另一客户请求(5)关闭服务器。2、客户方:(1)打开一通信通

4、道,并连接到服务器所在主机的特定端口。(2)向服务器发送服务请求报文,等待并接收应答;继续提出请求……(3)请求结束后关闭通信通道并终止。3、TCP连接的套接字的系统调用时序图如图2.1所示。4、TCP连接的应用程序流程图如图2.2所示。21图2.1TCP连接的套接字的系统调用时序图图2.2TCP连接的应用程序流程图21四、具体要求需要有基本的双人、多人文字聊天功能,上下线通知,在线用户列表,点对点文件传输,所有的文字或文件传输需支持CRC-32校验,具有出错重传机制;五、实验代码(1)客户机:usi

5、ngSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.IO;usingSystem.Linq;usingSystem.Net;usingSystem.Net.Sockets;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;names

6、paceSocketClient{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}Socket_socketSend;privatevoidbtnStart_Click(objectsender,EventArgse){//创建负责通信的Socket:if(_socketSend==null

7、

8、_socketSend.Connected==false){_socketSend=newSocket(AddressFami

9、ly.InterNetwork,SocketType.Stream,ProtocolType.Tcp);IPAddressip=IPAddress.Parse(txtServer.Text);IPEndPointpoint=newIPEndPoint(ip,Convert.ToInt32(txtPoint.Text));SocketAsyncEventArgssocketE=newSocketAsyncEventArgs();socketE.Completed+=socketE_Completed;2

10、1socketE.RemoteEndPoint=point;try{_socketSend.ConnectAsync(socketE);}catch(SocketException){}}else{ShowMsg("系统提示:","已经连接到服务器:"+_socketSend.RemoteEndPoint.ToString()+"请重新连接!");}}voidsocketE_Completed(objectsender,SocketAsyncEventA

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

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

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