Categories: 业界

tcp/ip四层模型

它旨在通过将通信过程分为更小和更简单的组件来描述通信系统的功能。但是,当我们谈论TCP / IP模型时,它是由美国国防部(DoD)在1960年代设计和开发的,它基于标准协议。它代表传输控制协议/ Internet协议。在TCP / IP模型是OSI模型的简明版本。它包含四层,与OSI模型中的七层不同。这些层是:

  1. 流程/应用层
  2. 主机到主机/传输层
  3. 互联网层
  4. 网络访问/链接层

TCP/IP和OSI模型的图形比较如下:

TCP/IP和OSI模型之间的区别:

TCP / IP OSI
TCP是指传输控制协议。 OSI是指开放系统互连。
TCP / IP具有5层。 OSI有7层。
TCP / IP更可靠 OSI不太可靠
TCP / IP没有严格的界限。 OSI具有严格的界限
TCP / IP遵循水平方法。 OSI遵循垂直方法。
TCP / IP在应用程序层本身中同时使用会话层和表示层。 OSI使用不同的会话和表示层。
然后由TCP / IP开发的协议进行建模。 OSI开发了模型,然后制定了协议。
TCP / IP中的传输层不能保证包的传递。 在OSI模型中,传输层提供了数据包的保证传递。
TCP / IP模型网络层仅提供较少连接的服务。 OSI模型中的网络层提供了少连接和面向连接的两种服务。
在TCP / IP模型中无法轻松替换协议。 在OSI模型中,协议可以更好地覆盖并且很容易随技术的变化而替换。

第一层是代表发送者的“处理”层和代表接收者的“网络访问”层。在本文中,我们将代表接收者进行讨论。

1.网络访问层

该层对应于OSI模型的数据链路层和物理层的组合。它寻找硬件寻址,并且该层中存在的协议允许物理传输数据。
我们刚刚谈到ARP是Internet层的协议,但是将其声明为Internet层或网络访问层的协议存在冲突。它被描述为位于第3层,并由第2层协议封装。

2. Internet层

该层与OSI网络层的功能并行。它定义了负责在整个网络上进行逻辑数据传输的协议。驻留在此层的主要协议是:

  1. IP –代表Internet协议,它负责通过查看数据包头中的IP地址将数据包从源主机传递到目标主机。IP有2个版本:
    IPv4和IPv6。IPv4是当前大多数网站使用的一种。但是,由于与用户数量相比,IPv4地址的数量受到限制,因此IPv6正在增长。
  2. ICMP –代表Internet控制消息协议。它封装在IP数据报中,并负责向主机提供有关网络问题的信息。
  3. ARP –代表地址解析协议。它的工作是从已知的IP地址中找到主机的硬件地址。ARP有几种类型:反向ARP,代理ARP,免费ARP和反向ARP。

3.主机到主机层

该层类似于OSI模型的传输层。它负责端到端通信和数据的无错误传递。它使上层应用程序免受数据复杂性的影响。该层中存在的两个主要协议是:

  1. 传输控制协议(TCP)–在终端系统之间提供可靠且无错误的通信是众所周知的。它执行数据的排序和分段。它还具有确认功能,并通过流控制机制控制数据流。这是一个非常有效的协议,但是由于这些功能而导致大量开销。开销增加导致成本增加。

  2. 用户数据报协议(UDP)–另一方面,不提供任何此类功能。如果您的应用程序不需要可靠的传输,则它是首选协议,因为它非常具有成本效益。与TCP是面向连接的协议不同,UDP是无连接的。

4.应用层

该层执行OSI模型的前三层的功能:应用程序,表示和会话层。它负责节点到节点的通信并控制用户界面规范。该层中存在的一些协议是:HTTP,HTTPS,FTP,TFTP,Telnet,SSH,SMTP,SNMP,NTP,DNS,DHCP,NFS,X Window,LPD。看一看协议在应用层有关这些协议的一些信息。链接文章中未列出的协议是:

  1. HTTP和HTTPS –** HTTP代表超文本传输协议。万维网使用它来管理Web浏览器和服务器之间的通信。HTTPS代表HTTP-Secure。它是HTTP与SSL(安全套接字层)的组合。在浏览器需要填写表格,登录,认证和进行银行交易的情况下,这种方法非常有效。

  2. SSH – SSH代表安全外壳。它是类似于Telnet的终端仿真软件。首选SSH的原因是它能够维护加密连接。它通过TCP / IP连接建立安全会话。

  3. NTP – NTP代表网络时间协议。它用于将我们计算机上的时钟同步到一个标准时间源。这在银行交易等情况下非常有用。假定以下情况不存在NTP。假设您执行一个事务,您的计算机在2:30 PM读取时间,而服务器在2:28 PM记录时间。如果不同步,服务器可能会严重崩溃

5.0
02
Golang中获取当天0时的时间戳
计算机osi七层模型
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Recent Posts

全球货币导航网页上线了!

o在全球化的今天,货币兑换和国…

9小时 ago

bash字符串拼接

在编程中,字符串的拼接是一个非…

10小时 ago

Bash Case详解

Bash case 语句通常用…

10小时 ago

Bash for详解

for循环是编程语言中的基础概…

10小时 ago

liunux中你必须知道alias命令?

在Linux操作系统中,无论你…

1天 ago

zshrc文件详解

Zsh 是一个强大的 shel…

2天 ago