Windows Sockets概述

1.Windows Sockets的优势:

(1)Windows Sockets是一个开放的标准库;

(2)Windows Sockets提供源代码可移植性;

(3)Windows Sockets支持动态链接;

动态链接库(DLL)是windows的重要特性,动态链接库是带有定义明确的接口的可执行过程的库,就像其名称所提示的那样,应用程序是在运行时动态链接这些库的,而不是在编译时静态链接。这种架构有诸多优点:

*当多个应用需要使用DLL时,可以共享代码,这意味着在内存中只需要代码的一个副本。

*应用和DLL是分离的,所以修改DLL时不需要改动应用(反之亦然)。

*所有提供兼容API的DLL也提供兼容的应用程序二进制接口(ABI)。

上述的最后一点最为重要,因为ABI允许可执行代码的移植,而不仅仅是源代码移植。这意味着一旦你编译和链接了你的源代码,生成了可执行程序,他可以运行于任何场厂商的Windows Sockets ABI上----即WinSock.DLL动态链接库文件。你不需要重新编译和链接你的源代码,就可以在不同的产商的WinSock.DLL上运行你的应用程序。另一方面,你也能够在不改变WinSock.DLL的情况下更新你的可执行程序,二进制可移植性为你提供了最完美的灵活性和便利性。


2.OSI网络参考模型的组成结构和WinSock网络模型。


在我们的Windows Sockets模型中,我们把所有比较靠下面的层次称为网络系统,把靠上面的层次称为WinSock应用程序,而WinSock的应用编程接口(API)位于两者之间。上述三个组成部分构成我们的WinSock网络模型。

WinSock应用程序:提供高层的功能(OSI的5-7层);

网络系统:提供低层的功能(OSI的1-4层);

WinSock API:允许高层访问底层的服务。

一个典型的网络系统具有下图所示的模块化结构,虽然也有可能有其他的配置。这个WinSock模型包括了任何能够提供符合Windows Sockets规范(1.1版本)的API的网络系统。


WinSock API (WSA)提供对网络系统的访问,而WinSock应用程序则利用系统的服务来发送和接收信息。在图2-2中,虚线表示WSA的位置,同时也代表网络系统和WinSock应用之间的任务分工,这条线同时也是与OSI网络模型中低层和高层之间的分界线吻合。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值