- 40
- 0
- 约6.11千字
- 约 6页
- 2018-06-07 发布于江苏
- 举报
第十六讲 Stocket编程
Stocket套接字
提供对网络通信的基本操作,常用的类型有两种:
流式套接字
提供连接的、可靠的、数据无错并且无重复的数据发送服务,发送的数据按顺序接收。无长度限制线路占用率高。TCP协议使用这种接口。如网页浏览、下载文件。
数据报式套接字
提供面向无连接的服务,以独立的数据包形式发送数据,不提供正确性检查,不保证各数据包的发送顺序,可能出现数据的重发、丢失等现象。接收的顺序由路由决定,线路占用率低,数据包长度不能大于32KB.UDP协议使用这种接口,如QQ。
面向连接就像打电话,一直占线,先发先至。面向无连接就像寄信,只管收发,什么时候到由邮局定。与这个比方不同的是面向连接的方式为了保证安全可靠,速度不如无连接方式。
首先我们解释一下在网络编程时候,经常遇到的几个概念:同步(synchronous)、异步(asynchronous)、阻塞(Block)和非阻塞(Unblock):
所谓异步方式,就是发送方发送数据包以后,不等接受方响应,就接着发送下一个数据包。
同步方式就是当发送方发送一个数据包以后,一直等到接受方响应后,才接着发送下一个数据包。
阻塞套接字是指执行此套接字的网络调用时,直到调用成功才返回,否则此套节字就一直阻塞在网络调用上,比如调用StreamReader 类的Readlin ( 方法读取网络缓冲区中的数据,如果调用的时候没有数据到达,那么此Readlin ( 方法将一直挂在调用上,直到读到一些数据,此函数调用才返回;
非阻塞套接字是指在执行此套接字的网络调用时,不管是否执行成功,都立即返回。同样调用StreamReader 类的Readlin ( 方法读取网络缓冲区中数据,不管是否读到数据都立即返回,而不会一直挂在此函数调用上。
在Windows网络通信软件开发中,最为常用的方法就是异步非阻塞套接字。平常所说的C/S(客户端/服务器)结构的软件采用的方式就是异步非阻塞模式的。
网络通信地址
网络通信地址用对象IPEndPoint来表示,IPEndPoint类的成员有两个:
Address属性:IP地址,不同的主机IP地址不同。
Port属性:端口号,同一主机的不同线程可通过不同的端口号,完成不同的通信处理。
通过IPHostEntry类,将一个域名(主机名)与一组IP地址关联。它有两个属性:
AddressList属性:以一个IPAdress数组的形式存放了与域名相关联的IP地址列表。
HostName属性:即域名。
通过Dns类,向TCP/IP协议的应用程序提供域名服务。常用的静态方法有三个:
GetHostName:返回主机名称。
GetHostByName:获取由参数指定的主机名的DNS信息,返回IPHostEntry类型的对象。
Resolve:域名解析,将由参数指定的域名转换为IP地址,返回IPHostEntry类型的对象。
常用的属性和方法
属性 说明
AddressFamily 获取Socket的地址族。
*Available 获取已经从网络接收且可供读取的数据量。
*Blocking 获取或设置一个值,该值指示Socket是否处于阻塞模式。
*Connected 获取一个值,该值指示Socket是否已连接到远程资源。
Handle 获取Socket的操作系统句柄。
*LocalEndPoint 获取本地终结点。
ProtocolType 获取Socket的协议类型。
*RemoteEndPoint 获取远程终结点。
SocketType 获取Socket的类型。
方法 说明
*Accept 创建新的Socket以处理传入的连接请求。
BeginAccept 开始一个异步请求,以创建新的Socket来接受传入的连接请求。
BeginConnect 开始对网络设备连接的异步请求。
BeginReceive 开始从连接的Socket中异步接收数据。
BeginReceiveFrom 开始从指定网络设备中异步接收数据。
BeginSend 将数据异步发送到连接的
BeginSendTo 向特定远程主机异步发送数据。
*Bind 使Socket与一个本地终结点相关联。
*Close 强制Socket连接关闭。
*Connect 建立到远程设备的连接。
*DisConnect 建立到远程设备的连接。
EndAccept 结束异步请求以创建新的Socket来接受传入的连接请求
EndConnect 结束挂起的异步连接请求。
EndReceive 结束挂起的异步读取。
EndReceiveFrom 结束挂起的、从特定终结点进行异步读取。
EndSend 结束挂起的异步发送
EndSendTo 结束挂起的
您可能关注的文档
- 7.4由三角函数值求角.ppt
- 高一化学研究有机化合物一般步骤和方法.ppt
- 高一历史多极化趋势加强.ppt
- 第七章跟单信用证下单据审核.ppt
- 宠物医师资格测试培训-动物医院化验单.doc
- 抽样方法(3)[下学期]--北师大版.ppt
- 我国乡镇行政管理秋20112721.pdf
- 高一生物孟德尔豌豆杂交实验4.ppt
- 出版测试中级基础-出版法规.doc
- 7IP地址子网划分VLSMCIDR.pdf
- 2026及未来5年中国电磁铁行业市场发展监测及投资战略咨询报告.docx
- 2026及未来5年中国建筑工程机械行业市场发展监测及投资战略规划报告.docx
- 2026及未来5年中国硫化镍行业市场调研分析及投资战略规划报告.docx
- 2026及未来5年中国烷化剂市场运营态势及发展前景预测报告.docx
- 2026年涤纶细旦长丝项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年弓型虫抗体试剂项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年拖链系统用高柔性数据传输电缆项目可行性研究报告(市场数据调查、监测研究).docx
- 2025年中国水晶圆盘市场调查研究报告.docx
- 2025年中国长网双辊挤浆机市场调查研究报告.docx
- 2026年及未来5年内中国液体氩气行业投资前景及策略咨询研究报告.docx
最近下载
- 《影视视听语言》第四版 07189 第六、七、八、九章.pptx VIP
- 声带息肉手术患者护理查房.pptx VIP
- 《影视视听语言》第四版 07189第五章.pptx VIP
- 《影视视听语言》第四版 07189第三章.pptx VIP
- 《影视视听语言》第四版 07189 第一章课件.pptx VIP
- 高一地理自然地理环境的差异性.pptx VIP
- 《影视视听语言》第四版 07189 第二章.pptx VIP
- 2026年南宁职业技术学院单招职业适应性考试模拟测试卷附答案解析.docx VIP
- 高中地理 人教版 选修一《自然环境的整体性与差异性》自然环境的整体性 课件.pptx VIP
- 健康证考试题及答案.docx VIP
原创力文档

文档评论(0)