第四讲_套接字API教程方案.ppt

第四讲 套接字API 电子科技大学计算机学院 什么是套接字 TCP/IP协议存在于OS中,网络服务通过OS提供 在OS中增加支持TCP/IP的系统调用——Berkeley套接字 如Socket,Connect,Send,Recv等 1981提出于BSD4.1 UNIX,本书基于BSD4.4 版本 什么是套接字 套接字API 来自UNIX系统 Berkeley套接字 ARPA要求伯克利分校将TCP/IP移植到UNIX中 需要创建一个接口,便于应用程序使用这个接口 进行网络通信 尽可能使用现有的系统调用,同时添加新的系统调用支持TCP/IP。 这个系统被称为BSD UNIX 套接字,成为事实上的标准 指明一个协议接口 考虑:接口是专门针对TCP/IP, 还是可以为其它协议所用呢? 方法一:定义专门支持TCP/IP通信的一些函数 方法二:定义支持一般网络通信的函数,用参数是TCP/IP通信作为一种特例 Berkeley套接字使用第二种办法,具有通用性,TCP/IP是一个族PF_INET 使用服务的类型,而不是指定协议名 争论: 通用性没有必要,使应用程序难以阅读 通用性可以使程序员免于了解协议族的细节 套接字:描述符 OS将文件描述符实现为一个指针数组,指向一个内部的数据结构:进程描述符表的下标 套接字和文件类似,每个活动套接字使用一个小整数标识,进程的文件描述符和套接

文档评论(0)

1亿VIP精品文档

相关文档