什么是Socket?
所谓Socket通常也称作"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
Socket用于在两个基于TCP/IP协议的应用程序之间相互通信。最早出现在UNIX系统中,是UNIX系统主要的信息传递方式。在WINDOWS系统中,Socket称为WINSOCK。
两个基本概念:客户方和服务方。当两个应用之间需要采用Socket通信时,首先需要在两个应用之间(可能位于同一台机器,也可能位于不同的机器)建立Socket连接,发起呼叫连接请求的一方为客户方,接受呼叫连接请求的一方成为服务方。客户方和服务方是相对的,同一个应用可以是客户方,也可以是服务方。
在客户方呼叫连接请求之前,它必须知道服务方在哪里。所以需要知道服务方所在机器的IP地址或机器名称,如果客户方和服务方事前有一个约定就好了,这个约定就是PORT(端口号)。也就是说,客户方可以通过服务方所在机器的IP地址或机器名称和端口号唯一的确定方式来呼叫服务方。在客户方呼叫之前,服务方必须处于侦听状态,侦听是否有客户要求建立连接。一旦接到连接请求,服务方可以根据情况建立或拒绝连接。连接方式有两种,同步方式(Blocking)和(noBlocking).
客户方发送的消息可以是文本,也可以是二进制信息流。当客户方的消息到达服务方端口时,会自动触发一个事件(event),服务方只要接管该事件,就可以接受来自客户方的消息了。
前几天编写一个Vod下载器,用到了此方面的知识,顺便就把相关的资料整理一下,可以加强学习,以备以后,同时也方便大家。
文章下载地址:https://files.cnblogs.com/xia520pi/C_Sharp_Socket.rar
文章的目录:
1、C#编写简单的聊天程序
1.1、版权声明
1.2、内容详情
2、C#网络编程
2.1、版权声明
2.2、内容详情
2.2.1 基本概念和操作
2.2.2 同步传输字符串
2.2.3 异步传输字符串
2.2.4 订立协议和发送文件
2.2.5 接收文件
3、Scoket 处理HTTP请求响应
3.1、版权声明
3.2、内容详情
4、浅谈C# Socket编程及多线程
4.1、版权声明
4.2、内容详情
5、Socket编程笔记
5.1、版权声明
5.2、内容详情
6、深入探析C# Socket
6.1、版权声明
6.2、内容详情
7、最基本的Socket编程
7.1、版权声明
7.2、内容详情
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【虾皮★csAxp】。
如果,您还想与更多的爱好者进一步交流,不防加入QQ群【虾皮工作室-ABC大数据(232658451)】。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。