跳到主要内容

任务一 TCP/IP参考模型

知识点​

1.TCP/IP协议的地位是什么?​

TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/互联网协议)是一个使用非常普遍的网络互联标准协议。众多网络产品生产厂家都支持 TCP/IP,它被广泛用于互联网连接的所有计算机上,已成为一个事实上的网络工业标准。

  • OSI 参考模型是 ISO 制定的理想标准(法律上的标准),体系庞大复杂,不便于工业生产使用
  • TCP/IP 从一开始就关注并解决了不同网络的互联问题,是事实标准
  • 建立在 TCP/IP 结构体系上的协议也成为应用最广泛的协议
  • 注意区分:OSI 是理论上的标准,TCP/IP 是事实上的标准

2.TCP/IP的起源经历了哪几个阶段?​

时间事件
20世纪60年代后期—70年代美国国防部高级研究规划署(ARPA)资助建立分组交换试验网 ARPANET
1972年为使不同类型计算机通过 ARPANET 通信,提出主机到主机的网络控制协议(NCP)
基于 NCP 时期陆续开发出电子邮件程序、文件传输协议(FTP)、远程登录协议(Telnet)
1974年美国人**瑟夫(Vinton Cerf)和卡恩(Bob Kahn)**完成新的通信协议 TCP(即后来的 TCP/IP)
1977年ARPA 组织第1次 3 个网络之间基于 TCP 的互联,经过 15 万千米传输,没有丢失一个数据位,验证了 TCP 的高可靠性
1978年把转发功能与端到端可靠传递功能分离成网络互联协议(IP)和传输控制协议(TCP),大大提高了灵活性
1980年瑟夫提出:每个网络内部各自使用自己独立的通信协议,与其他网络通信时使用 TCP/IP,这个设想最终导致 Internet 的诞生
1983年ARPANET 采用 TCP/IP 取代 NCP,TCP/IP 成为 Internet 标准通信协议

为什么 NCP 被取代:NCP 要求组成互联网的各个子网具有极高的可靠性;互联网扩展后包括广域网、局域网和分组无线网,各子网可靠性下降,NCP 无法在新环境下提供完全可靠的通信,因此 ARPA 启动了改进项目。

3.TCP/IP是如何发展和管理的?​

(1)技术发展的原因

TCP/IP 的结构设计良好,与网络底层的数据链路层和物理层无关,具有极好的扩展性和兼容性,能适用于不同的底层网络技术(如 ATM、异步传输等),同时又能从新技术中吸取优势,使整个体系不断完善。

(2)80—90年代的重要进展

年份事件
1984年研制出第一个域名系统(DNS),可将域名(如 www.example.com)解析为 IP 地址(如 192.168.5.18)
1996年**超文本传输协议(HTTP)**推出,万维网(Web)使用该协议,把 Internet 带入家庭和企业
1996年第一版**版本6(IPv6)**标准发布,更适合当前 Internet 应用的需要,为分布式和多媒体应用创建了必要环境

(3)TCP/IP 是开放的技术

TCP/IP 技术不归任何组织所有,由国际化的组织监督和管理:

组织职责
ISOC(Internet 协会)监督和管理 TCP/IP 技术的国际组织
IAB(Internet 体系结构委员会)管辖 TCP/IP 的技术管理
IRTF(Internet 研究任务组)IAB 管辖,负责协调所有与 TCP/IP 相关的研究项目
IETF(Internet 工程任务组)负责开发 Internet 标准和协议,由在 TCP/IP 某一技术领域具有特定职责的个人组成

标准的发布方式:TCP/IP 标准以 RFC 的形式发布。标准最初以 Internet 草案的形式拟定,经过一段时间检验后,如果被广泛接受,IETF 将以 RFC 的形式发布最终版本,并为其分配一个 RFC 编号。

到目前为止,TCP/IP 协议栈中已包含上千个子协议,并随 Internet 的发展不断升级进化。

4.TCP/IP网络中的基本概念有哪些?​

概念英文含义
节点Node任何连接在网络上的设备,如主机、路由器或网络打印机。TCP/IP 网络中每个节点均有一个全网络唯一的 IP 地址
主机Host特指连接到网络或 Internet 上的用户计算机,必须指定一个 IP 地址,是 IP 数据包的发出者和接收者
路由器Router工作在网络层的专用设备,连接两个或多个网络,在它们之间进行数据包的分组转发;使用数据包的目标地址选择下一站并转发
局域网网段LAN Segment构成子网的一部分,一般使用网桥或第 2 层交换机将其与网络其余部分隔开
子网Subnet由一个或多个局域网网段构成,可用路由器将子网互联;给定子网中所有节点具有相同的子网地址
TCP/IP网络TCP/IP Network两个或多个通过路由器连接的子网,有时还称为互联网络(Internetwork)
接口Interface节点与物理链路之间的边界;如网络适配器(网卡)是主机和物理链路(网线)之间的接口
IP地址IP Address在互联网层分配给一个网络接口或一组接口的、可用作 IP 数据包源地址或目标地址的标识符
数据包IP Packet存在于互联网层、由 IP 头和有效数据负载构成的协议数据单元(PDU)
子网掩码Subnet Mask用来确定一个 IP 地址属于哪一个子网

子网地址举例:某子网上每台主机、路由器与该子网相连端口的 IP 地址均可取 192.168.1.1~192.168.1.254。

子网掩码举例:IP 地址 192.168.2.9,子网掩码 255.255.255.0,则 TCP/IP 能区别出网络标识符为 192.168.2.0,主机标识符为 9。

5.TCP/IP参考模型分为哪四层?各层功能是什么?​

TCP/IP 参考模型(TCP/IP Reference Model)分为 4 个层次:应用层、传输层、互联网层、网络接口层。

与 OSI 相比的两处合并:

  1. 去掉了 OSI 中的会话层和表示层,这两层的功能被合并到应用层实现
  2. 将 OSI 中的数据链路层和物理层合并为网络接口层
层次英文主要功能
网络接口层Host to Network为 IP 模块发送和接收数据;为 ARP 模块发送 ARP 请求和接收 ARP 应答;为 RARP 模块发送 RARP 请求和接收 RARP 应答
互联网层Internet Layer整个 TCP/IP 协议栈的核心;把分组发往目标网络或主机;定义分组格式和协议、传送分组的路由;完成异构网互联;实现拥塞控制
传输层Transport Layer为应用层提供会话和数据报通信服务;定义 TCP 和 UDP 两种服务质量不同的协议
应用层Application Layer合并了 OSI 会话层和表示层的功能;为应用程序访问下面各层的网络服务提供接口;面向不同网络应用引入不同的应用层协议

关于网络接口层的三点补充:

  1. 网络接口层协议有许多种,但都能解决三个基本问题:封装成帧、透明传输、差错检测
  2. 具体实现方法随网络类型不同而有差异,如以太网、无线局域网、帧中继、异步传输模式(ATM)等各不相同
  3. 互联网层为了尽快发送分组,可能沿不同路径同时传递,因此分组到达的顺序与发送顺序可能不同,需要上层对分组进行排序

6.TCP/IP参考模型与OSI参考模型如何对应?​

OSI 参考模型TCP/IP 参考模型数据单位
应用层应用层数据报文
表示层应用层(功能并入)—
会话层应用层(功能并入)—
传输层传输层数据段
网络层互联网层数据包
数据链路层网络接口层数据帧
物理层网络接口层比特

对应关系记忆要点:TCP/IP 的 4 层并非与 OSI 的 7 层一一对应,而是"上三层并一层、下两层并一层、中间两层各对一层"。

7.什么是TCP/IP协议栈?各层有哪些核心协议?​

将 TCP/IP 网络体系中所使用的协议列表称为 TCP/IP 协议栈(Protocol Stack),也称为协议簇、协议组、协议群等。为了准确描述当前互联网层的协议状况,协议栈中列出了目前同时在使用的两个版本的 IP(IPv4 和 IPv6)。

层次核心协议
应用层HTTP、FTP、SMTP、DNS、RIP、SNMP;开发接口如 Windows 套接字(Sockets)、NetBIOS
传输层TCP、UDP
互联网层IP、ARP、RARP、ICMP、IGMP;IPv6 对应 IPv6、ICMPv6、NDP、MLD
网络接口层各种链路层协议(以太网、无线局域网、帧中继、ATM 等)

说明:IPv4 是目前在 Intranet(企业内联网)和 Internet 中普遍使用的互联网层通信协议;IPv6 是新的互联网层通信协议,最终将取代 IPv4。如无特别指出,本书中的 IP 即指 IPv4。

8.应用层有哪些常见协议?​

应用层包含大量协议,且人们还在不断开发新协议。应用层协议定义了应用程序之间用来交换数据的规则。

协议全称用途
HTTP超文本传输协议(Hyper Text Transfer Protocol)用于传输 Web 页面文件
FTP文件传输协议(File Transfer Protocol)用于传输文件
SMTP简单邮件传输协议(Simple Mail Transfer Protocol)用于传输电子邮件和附件

帮助用户使用和管理 TCP/IP 网络的应用层协议:

协议全称用途
DNS域名系统(Domain Name System)将主机字符化的名称(如 www.sbs.com.cn)解析为 IP 地址,并在 DNS 服务器之间复制名称信息
RIP路由信息协议(Router Information Protocol)路由器用来在 IP 网络上交换路由信息的协议
SNMP简单网络管理协议(Simple Network Management Protocol)收集网络管理信息,并在网络管理控制系统与网络设备(路由器、网桥、服务器)之间交换管理信息

用户通过应用程序编程接口(API)调用这些协议提供的服务来开发各类应用系统,例如 Windows 套接字(Sockets) 和 NetBIOS 就是两个用于开发 TCP/IP 应用程序的应用层接口。

9.TCP协议和UDP协议有什么区别?​

传输层的核心协议是 TCP 和 UDP,两者在 IPv4 和 IPv6 上都能运行。

比较项TCP(传输控制协议)UDP(用户数据报协议)
通信方式一对一一对一或一对多
连接面向连接面向无连接
可靠性可靠不可靠
主要机制建立连接;对发送的数据包排序和确认;重传丢失的数据包;端到端流量控制不对报文排序,无流量控制
数据处理把上层字节流分成报文段下发;接收端重组后交上层直接封装为数据报发送
适用场合需要可靠传输的应用数据量很少;不希望产生与 TCP 连接有关的时间开销;应用层或上层协议已提供可靠传输

TCP 的工作要点:

  1. 在工作时需要在源节点与目标节点间建立连接
  2. 对发送的数据包进行排序和确认,并重传传输过程中丢失的数据包
  3. 将源节点发出的字节流无差错地发往网络上的目标节点
  4. 在源节点把上层传递下来的字节流分成报文段并传递给下层;在接收端负责把收到的报文重组后递交给上层
  5. 处理端到端的流量控制,避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据

10.互联网层有哪些核心协议?​

协议全称功能
IP互联网协议(Internet Protocol)完成网络编址规则、数据包格式,以及对数据包进行寻址、路由、分段和重组处理
ARP地址解析协议(Address Resolution Protocol)将互联网层的地址(IP 地址)解析为网络接口层地址(网络硬件接口地址)。如获取 IP 地址为 192.168.1.2 的计算机对应的以太网卡地址 00-0E-9B-1B-10-7E
RARP反向地址转换协议(Reverse Address Resolution Protocol)ARP 的逆过程,可从 ARP 表或缓存中通过 MAC 地址得到其 IP 地址
ICMP网际控制报文协议(Internet Control Message Protocol)报告数据包中的差错和其他网络层信息,帮助用户诊断不成功的数据包传输过程
IGMP互联网组管理协议(Internet Group Management Protocol)管理主机加入和离开多播组

多播组:将网络中需要相同数据包的节点加入一个相同的组中,通过共享一条数据流,有效减轻服务器负载;此时服务器的服务总带宽不受节点接入端带宽的限制,这样的节点组称为多播组。

IPv6 对应的核心协议:

协议功能
IPv6可路由协议,为数据包进行寻址和路由,同时提供拥塞控制方法
ICMPv6报告传输错误及辅助信息,帮助用户判断数据包传输不成功的原因
NDP(邻居发现协议)与 IPv6 共同使用,工作在互联网层,负责在链路上发现其他节点和相应地址,并确定可用路由、维护关于可用路径和其他活动节点的信息可达性
MLD建立和管理 IPv6 下的多播组

11.OSI与TCP/IP两种体系结构如何比较?​

比较项OSI 参考模型TCP/IP 参考模型
制定者ISO(国际标准化组织)ARPA/IETF(事实标准)
层数7 层4 层
性质理想标准,理论完整、体系庞大复杂事实标准,先有协议后有模型,实用性强
会话层、表示层独立两层并入应用层
数据链路层、物理层独立两层合并为网络接口层
应用程度较少直接用于产品实现广泛应用于 Internet 和各类网络产品