套接字接口:从磁带安装起步,如何改写网络服务历史、征服世界?
套接字接口:改写网络服务历史
1983年,加州大学伯克利分校发布UNIX操作系统4.2版本(BSD),将“套接字”网络模型推向世界,提升全球网络服务可访问性。最初通过磁带安装,在20世纪80年代,网络速度慢且缺乏通用协议,套接字改变这一状况,让联网UNIX系统更具一致性,带来标准化网络访问模式。
早期BSD版本与磁带安装
早自1978年,用于PDP - 11小型计算机的早期BSD版本通过磁带发布给全球研究社区,按“加州大学董事会”许可证发布,限制责任和用户权利。更新代码要求许可证签署人保持连续性,存在问题。磁带安装操作系统过程复杂,需手动输入十六进制代码,整个安装约需一天,重新编译可能需两到三天。
4.2BSD版本的重大改变
4.2BSD版本修复漏洞、改进文件系统配额方法、引入符号链接,还开发了伯克利套接字网络系统,当时没人预见到其重要性。
套接字出现之前
此前,UNIX系统通过cu或tip等程序访问网络服务,早期调制解调器是声学耦合器,需拨号连接。UUCP是发送邮件、阅读新闻和接收文件的主要方式,部分人使用IBM BITNET、SERC、JANET等系统,运行在X.25数据网络上。
套接字与UNIX文件模型
套接字复用UNIX文件描述符,让读写文件的程序可读写网络,如FTP、Telnet、SMTP等程序迅速出现。但4.2BSD首个版本中,多数用户无法访问ARPANET,套接字系统存在漏洞,最初无法与任何东西通信。
从实验到标准
套接字并非连接ARPANET协议的唯一接口,AT&T贝尔实验室开发的STREAMS可访问性低,恰逢与BSD法律纠纷。太阳微系统公司推出含套接字系统的产品,DEC发布的ULTRIX也包含套接字,各大制造商纷纷采用,AT&T在System V中也采用套接字。此后,基于UDP套接字的NFS被广泛采用,适配IBM PC的以太网卡适配层出现,网络协议围绕TCP/IP和UDP/IP堆栈展开,直到QUIC出现,但其最终也写入UNIX套接字,套接字征服了世界。
