对应OSI七层网络模型[11],Winsock工作在传输层和网络层,主要负责控制数据的输入和输出。由于Winsock屏蔽了数据链路层和物理层,使得应用程序不必考虑底层结构只要直接调用Winsock的API便可实现相互之间的通信[12],这给Windows下的网络编程带来了巨大的方便。

2.2.1  流式套接字模型

流式套接字方式对应传输层的TCP协议,是面向连接的,提供了双向的、有序的、无重复的数据流服务。在这种方式下,两个应用程序在通信前先要建立连接。只有通信的一端与另一端建立连接后,数据才能被正确接收和发送。由于这种方式是面向连接的,所以它可以按顺序无重复的将数据发送到目的端,确保了数据传输的可靠性。鉴于流式套接字通信可靠的特点,且对数据有校验和重发的机制,通常用于文件传输。使用流式套接字时,服务器首先要创建一个用于监听的套接字,调用bind函数将其绑定到一个公共的服务器端口上,然后调用listen()函数使它处于监听状态,等待客户端发起连接;客户端在创建套接字后调用connect()函数,请求与服务器连接;服务器套接字收到连接请求后,调用accept()函数接受此连接请求并建立一个新的套接字来与对方通信,称为会话套接字;原来的监听套接字继续监听,等待其他的连接请求,而新建立的套接字才是与客户端实际进行通信的套接字;通信结束后,客户端调用closesocket()函数关闭套接字,服务器也调用此函数关闭监听套接字和会话套接字,释放资源。

上一篇:切换脉冲系统的观测器设计与仿真
下一篇:VC++防空高炮毁歼概率分析计算软件设计

基于状态估计的控制系统...

基于RS-485的电梯呼梯装置设计+电路图

基于Zigbee的智能仓储管理系统设计

Matlab基于模型跟随的自适...

基于模糊控制方法的机械手同步控制研究

基于出租车GPS数据城市交通特性研究

MATLAB基于时序序列相似性匹配的电网故障诊断

麦秸秆还田和沼液灌溉对...

互联网教育”变革路径研究进展【7972字】

张洁小说《无字》中的女性意识

我国风险投资的发展现状问题及对策分析

网络语言“XX体”研究

安康汉江网讯

ASP.net+sqlserver企业设备管理系统设计与开发

老年2型糖尿病患者运动疗...

LiMn1-xFexPO4正极材料合成及充放电性能研究

新課改下小學语文洧效阅...