网络协议是网络中计算机与终端之间正确传送信息和数据的规范格式,包括三大要素:
语法:是数据和控制信息的结构和格式; |
语义:是控制信息的含义; |
时序/同步:是指双方相互应答的次序。 |
TCP/IP的IP协议是“尽力传递”方式,只有TCP层为保证传输可靠性而做必要的工作,不像OSI几乎每层都要保证可靠传输。
实践证明,TCP/IP的效率比OSI高,尤其当低层物理网络很可靠时,TCP/IP的效率更加可观。
一、TCP/IP协议,TCP/IP协议栈,互联网协议系列
1、最早的TCP/IP由文顿·瑟夫和罗伯特·卡恩两位开发,1983年1月1日,互联网前身Arpanet中,TCP/IP取代了旧的Network Core Protocol,慢慢通过竞争战胜了其它一些OSI RM等方案从而成为今天的互联网的基石。
TCP/IP成功的另一因素在与对为数众多的低层协议的支持。例如: Ethernet,Token Ring,FDDI,PPP,X.25,Frame Relay,ATM,Sonet, SDH等。
2、随着互联网的发展,目前流行的IPv4协议已经接近它的功能上限,因此IPv6浮出海面,用以取代IPv4。IPv4最致命的缺陷在于: 地址只有32位,IP地址空间有限。
二、TCP/IP协议栈组成
整个通信网络的任务,可以划分成不同的功能块,即抽象成所谓的 "层"。用于互联网的协议可以比照TCP/IP RM进行分类。
所有这些协议都在相应的RFC文档中讨论及标准化。协议在相应的RFC中均标记了状态: 必须required,推荐recommended,可选elective, 实验experimental, 历史historic的状态。
1、必须协议
所有的TCP/IP应用都必须实现IP和ICMP。对于一个router 而言,有这两个协议就可以运作了。
IPv4 协议出生在1981年。升级版IPv6 的工作始于1995年。 |
ICMP 协议主要用于收集有关网络的信息查找错误等工作。 |
2、推荐协议
每一个应用层一般都会使用到两个传输层协议之一: 面向连接的TCP和无连接的包传输的UDP。
其它的一些推荐协议有: TELNET,FTP,SMTP,DNS,ECHO,NTP,SNMP,BOOTP。
3、可选协议(最常用的有:HTTP,DHCP,POP3,SSH,ARP)
范例: 不同计算机运行的不同协议
一个简单的路由器上可能会实现ARP, IP, ICMP, UDP, SNMP, RIP。 |
WWW用户端使用ARP, IP, ICMP, UDP, TCP, DNS, HTTP, FTP。 |
一台用户电脑上还会运行如TELNET, SMTP, POP3, SNMP, ECHO, DHCP, SSH, NTP。 |
无盘设备可能会在固件比如ROM中实现了ARP, IP, ICMP, UDP, BOOT, TFTP。 |
三、TCP/IP RM(最著名的互联网协议)
说三层道四层:TCP/IP标准并没有定义具体的网络接口协议,仅定义了如何与不同网络进行接口。
1、第一层网际层(是在TCP/IP标准中正式定义的第一层)
处理来自传输层的分组,将分组形成数据包(IP数据包),并为该数据包进行路径选择,最终将数据包从源主机发送到目的主机。这里有四个互联协议:IP,ARP,ICMP,IGMP
2、第二层传输层(也被称为主机至主机层)
主要负责主机到主机之间实体间端对到端通信,传输协议的选择根据数据传输方式而定。两个传输协议:TCP,UDP。
3、第三层应用层
在TCP/IP模型中,应用程序接口是最高层,它与OSI模型中的高三层的任务相同,用于提供网络服务,比如文件传输、远程登录、域名服务和简单网络管理等。
四、TCP/IP与ISO/OSI
TCP/IP模型并不十分清晰地区分服务、接口和协议这些概念。
TCP/IP模型先有协议,模型只是现有协议的描述,因而协议与模型非常吻合。问题在于TCP/IP模型不适合其它协议栈。因而,它在描述其它非TCP/IP网络时用处不大。
ISO/OSI模型(去掉会话层和表示层)可以用来很好地讨论计算机网络,但是ISO/OSI 协议并未流行。TCP/IP模型正好相反,其模型本身实际上并不存在,只是对现存协议的一个总结和归纳,但TCP/IP协议却被广泛使用。
1、OSI和TCP/IP的共同点
都采用了协议分层方法,将庞大复杂的问题划分为若干个较容易处理的范围较小的问题 |
都存在网络层、传输层和应用层, 都是基于一种协议栈的概念 |
都是计算机通信的国际性标准,实现世界上不同厂家生产的计算机之间的通信 |
2、OSI和TCP/IP的差别
模型设计的差别 | 市场应用和支持上不同 |
最初设计的差别 | 层数和层间调用关系不同 |
对可靠性的强调不同 | 标准的效率和性能上存在差别 |
五、补充
1、OSI RM各层的功能
2、分层——对等层通信的思想