一分钟了解 TCP/IP 模型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一分钟了解 TCP/IP 模型相关的知识,希望对你有一定的参考价值。
参考技术A写在开始
我们需要知道 协议 到底是什么。
然后我们需要知道什么是协议族。
TCP/IP(传输控制协议/互联网协议)由 DARPA 在 20 世纪 70 年代提出。这个模型来自于 ARPANET ,它同样也是个知名的“互联网模型”。TCP/IP 模型有四个抽象的层次,描述了总体的设计大纲,并实现了网络通信的具体协议。我们将会简短地讨论每个层次最为流行的协议。
网络访问层包括主机连接到物理网络所需要的硬件以及传送数据的协议。目标可以是网络上的其他主机,自己,或者远端的路由。互联网层具有整个互联网络的视图,而网络访问层仅限于像路由之类的第三层设备定义的物理层边界。
这个层次的协议取决于所使用的物理网络。如果物理网络是 LAN,那么通常使用的是 以太网(802.3) 协议以及它的变体,如果使用的是 WAN,常用的则是 点对点协议(PPP) 以及帧中继等协议。
比较出名的是以太网协议。两台电脑(主机)之间是通过网卡来进行发送和接收数据的。每个网卡都有一个独特的地址,也就是 MAC 地址。以太网数据以帧为单位,包括标头和数据部分。以太网在子网内以广播的形式发送数据。光有 MAC 地址并不能让两台主机之间相互通信,如果两台主机不在同一个子网,以太网协议就没辙了。这就要通过网络层来区分每台主机所在的网络是哪个子网。如果在同一个子网,就用广播发送数据,否则就用路由发送。这就导致了网络层的诞生。
网络层的主要任务是区分主机是不是在同一个子网。网络层将上一层(传输层)接收到的数据分发到目标主机(在同一个网络或者外部网络)。这层确保片段通过网络移动到目标网络。于是引入了所谓的网络地址,即网址。规定网络地址的协议就叫 IP 协议 。所以网络地址也称 IP 地址。IP 协议的数据包放在以太网数据包的数据部分,也分为标头和数据两部分。有了 IP 协议,就可以在两个主机之间发送数据了,接下来的问题在于每台主机都有不同的应用,如何区分哪个数据包属于哪个程序?这就是传输层的由来。
传输层的主要任务是为应用层提供会话以及数据报通信服务。它接收应用层的数据,然后把它们分成更小的单元(标头和数据部分在网络层的数据部分),传输到网络层。
这层的任务是确保分割的单元在另一端正确地到达,它关心数据端到端的传输以及建立主机之间的逻辑连接,即所谓建立端口到端口的连接。网络层建立主机到主机的连接,只要有主机和端口,就能确定数据包属于哪个程序的。Unix 系统把主机 + 端口称之为套接字(Socket)。
这一层主要有两个协议: TCP 和 UDP 。
这个层次让应用能够访问其他层次的服务,并且定义了让应用交换数据的协议。这一层添加了自己的标头并向下发送到传输层。这一层的主要任务是将接收到的数据包按照协议解读成各种类型的数据,并将要发送的数据打包进传输层。现在数据包的格式看起来是这样的(以 HTTP 为例):
这一层主要的协议有: HTTP 、 FTP 、 SMTP 、 Telnet 、 NFS 、 RIP 等等。
计算机网络OSI与TCP/IP参考模型(思维导图带你一分钟快速了解)
目录
一、分层思想
1.1 分层原因
分层原因:将复杂的流程分解为几个功能相对单一的子过程
1.2 分层作用
1)使整个流程更加清晰,复杂问题简单化
2)更容易发现问题并针对性的解决问题
二、OSI七层参考模型
国际标准化组织(ISO)1984年颁布了开放系统互连(OSI)参考模型。一个开放式体系结构将架构分为七层,由高到低依次为:Application(应用层)、Presentation(表示层)、Session(会话层)、Transport(传输层)、Network(网络层)、DataLink(数据链路层)和Physical(物理层)。
分层 | 功能 |
应用层 | 网络服务与最终用户的一个接口 |
表示层 | 数据的表示、安全、压缩 |
会话层 | 建立、管理、中止会话 |
传输层 | 定义传输数据的协议端口号,以及流量和差错校验 |
网络层 | 进行逻辑地址寻址,实现不同网络之间的路径选择 |
数据链路层 | 建立逻辑连接,进行硬件地址寻址,差错校验等功能 |
物理层 | 建立、维护、断开物理连接 |
应用层、表示层、会话层为高三层,是面向用户的
网络层、数据链路层、物理层为低三层,是面向硬件的
传输层起承上启下的作用
端到端是传输层,点到点是网络
三、TCP/IP模型
3.1 TCP/IP 参考模型vsOSI参考模型
TCP/IP 4层模型(思科)
TCP/IP 5层模型(华为)
OSI参考模型与TCP/IP模型都采用了分层体系结构,将庞大而复杂的问题转化为着干个较小且易于处理的子问题。不同的是OSl参考模型划分7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP参考模型最多划分了5个层次,分别是物理层,数据链路层、网络层、传输层和应用层,将OSI参考模型中的高三层合并为一层统称应用层。在层次结构上,两者都采用了分层体系结构,但是TCP/IP参考模型比OSI参考模型更简化。
3.2 TCP/IP协议族的组成
1) TCP/IP协议是Internet最基本的协议,其中应用层的主要协议有HTTP、FTP、SMTP、TFTP、SNMP、DNS等,是用来接收来自传输层的数据或者按不同应用要求与方式将数据传输至传输层;
2) 传输层的主要协议有UDP、TCP,是使用者使用平台和计算机信息网内部数据结合的通道,可以实现数据传输与数据共享,TCP利用重传技术,追求数据传输安全性,UDP追求数据传输效率,其中HTTP、FTP、属于TCP协议,而TFTP、SNMP、DNS属于UDP协议;
3) 网络层的主要协议有ICMP(连通性诊断)、IP、IGMP(组播),ARP(IP地址到mac地址的映射)、RARP(mac地址到IP地址的映射);
4) 数据链路层和物理层由底层网络定义
四、数据封装过程
1.当软件进程的数据送到应用层时,应用层为数据加上本层的控制报头后,将其组织成应用层的数 据服务单元,然后向下传输到传输层;
2.传输层收到数据后,加上本层的TCP头部构成数据段,传输层将数据段送到网络层;
3.网络层将收到的数据段加上IP头部,构成数据包,再将数据包送到数据链路层;
4.数据链路层收到数据包,加上MAC头部信息,构成数据链路层的数据帧,送至物理层;
5.物理层将以比特流的方式通过传输介质传输出去。
五、数据解封装过程
- 当物理层传输的比特流到达目的节点时,从物理层依次上传,先由物理层传输到数据链路层;
- 数据链路层收到数据服务单元后,拆掉MAC头部,就是所谓的报头,上传至网络层;
- 网络层收到后将数据服务单元的IP头部脱掉,上传至传输层;
- 传输层再将数据拆掉TCP头部后传输至应用层,再恢复为原有数据。
六、PDU——协议数据单元
PDU协议数据单元,针对TCP/IP
层 | 消息/报文 (Message) |
传输层 | 数据段 (Segment) |
网络层 | 数据包 (Packet) |
数据链路层 | 数据帧(Frame) |
物理层 | 比特流(bits) |
七、设备与层的对应关系
八、各层间的通信
九、总结
以上就是对计算机网络OSI与TCP/IP参考模型的简单介绍了,小伙伴们一定要了解OSI七层模型和TCP/IP模型,并且知道数据封装和解封装的过程,封装的方向是自上而下,解封装的过程是自下而上,每一次对应的PDU,这些都要熟记哦。
以上是关于一分钟了解 TCP/IP 模型的主要内容,如果未能解决你的问题,请参考以下文章