TCP/IP起源于1969年美国国防部(DOD:The United States Department Of Defense)高级研究项目管理局(APRA:AdvancedResearch Projects Agency)对有关分组交换的广域网(Packet-Switched wide-area network)科研项目,因此起初的网络称为ARPANET。

1973年TCP(传输控制协议)正式投入使用,1981年IP(网际协议)协议投入使用,1983年TCP/IP协议正式被集成到美国加州大学伯克利分校的UNIX版本中,该“网络版”操作系统适应了当时各大学、机关、企业旺盛的连网需求,因而随着该免费分发的操作系统的广泛使用,TCP/IP协议得到了流传。TCP/IP技术得到了众多厂商的支持,不久就有了很多分散的网络。所有这些单个的TCP/IP网络都互联起来称为INTERNET。

基于TCP/IP协议的Internet已逐步发展成为当今世界上规模最大、拥有用户和资源最多的一个超大型计算机网络,TCP/IP协议也因此成为事实上的工业标准。IP网络正逐步成为当代乃至未来计算机网络的主流。

TCP/IP不是一个单独的协议,而是一个协议簇,是一组不同层次上的多个协议的组合。

网络接口层:
有时也称作数据链路层或链路层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。在TCP/IP协议簇中,链路层的协议比较多,它决定了网络形态,但很多都不是专门为TCP/IP设计的。常用的链路层
协议包括:以太网协议、PPP协议、帧中继协议、ATM等。
网络层:
IP层有时也称作互连网层,处理分组在网络中的活动,在底层通信网络的基础上,完成路由、寻径功能,提供主机到主机的连接。IP是尽力传送的、不可靠的协议。在TCP/IP协议簇中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互连网控制报文协议),ARP/RARP(地址解析/反向地址解析协议),以及IGMP协议(Internet组管理协议)。
传输层:
主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议簇中,有两个不同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议),它们分别承载不同的应用。TCP协议提供可靠的服务,UDP协议提供不可靠但是高效的服务。
应用层:
这一层负责具体的应用,比如HTTP访问、FTP文件传输、SMTP/POP3邮件处理等等。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:远程登录(Telnet)、文件传输协议(FTP)、简单邮件传输协议(SMTP)、简单网络管理协议(SNMP)。
严格来讲,分层模型的动机就是将各层的功能尽量独立,每层的功能对另一层来说是透明的,只对通信的另一端负责,为编程和诊断提供良好的层次隔离,然而实际情况并非如此,首先软件编程上完全按照分层模型来做编程效率会降低,与其分层,不如按功能实现来模块化。其次,对于许多功能实现来说,必须实现两层子间的交互,这又违背了当初的出发点,比如链路层在成帧时需要接收端的物理地址,该地址必须由网络层处理ARP地址解析才行,简单地将ARP放在那一层都有些牵强。

相关参考:
TCP/IP原理浅析 - Givefine - 博客园
网络基础——TCP连接
TCP/IP原理详解

标签: none

添加新评论