计算机网络——TCP/IP网络层次模型

这篇具有很好参考价值的文章主要介绍了计算机网络——TCP/IP网络层次模型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们上一次了解了OSI的网络层次模型,如果还没有看过上一次OSI网络模型的可以点击这里:

https://blog.csdn.net/qq_67693066/article/details/136597950

我们今天来看实际在生活中使用更广的TCP/IP网络模型

TCP/IP网络模型的起源

TCP/IP网络模型的起源可以追溯到20世纪60年代末和70年代初,当时美国国防部的高级研究计划局(ARPA)启动了一个名为ARPANET的项目,旨在建立一种分散的、鲁棒的通信网络,以连接分散在全国各地的大学和研究机构。这个项目的成功和发展奠定了互联网的基础,并推动了TCP/IP协议的发展和普及。

在ARPANET项目的早期,各个研究机构使用各自独立的网络协议,这导致了不同网络之间的互联互通问题。为了解决这个问题,美国国防部要求设计一种能够实现不同网络之间通信的协议,于是TCP/IP协议应运而生。

在20世纪70年代中期,Vinton Cerf和Robert Kahn等人设计了TCP/IP协议族,使得不同网络之间能够进行有效的通信。这一设计成为了互联网的基础协议,TCP/IP协议也成为了互联网通信的标准。

TCP/IP协议族的设计受到了分层的思想启发,因此它被分为四个层次:应用层、传输层、网络层和数据链路层。这种分层结构使得协议的设计更加模块化和可扩展,并且简化了网络的管理和维护工作。

随着互联网的发展,TCP/IP协议成为了事实上的标准,并逐渐取代了其他网络协议,成为了互联网通信的基石。TCP/IP网络模型也因其简单、灵活和可扩展的特性而被广泛应用于各种网络环境中。

TCP/IP网络层次的结构

TCP/IP网络有四层结构:
计算机网络——TCP/IP网络层次模型,网络,计算机网络

网络接口层(或主机到网络层)这是TCP/IP模型的最底层,主要负责主机的逻辑连接和物理连接。它主要负责将数据从主机发送到网络上,以及从网络上接收数据。具体来说,它负责接收从网络层交来的IP数据包,并将其通过低层物理网络发送出去;或者从低层物理网络上接收物理帧,然后抽出IP数据包交给网络层。
网络层(或互联网层):这一层是TCP/IP模型的核心,主要负责路由寻址和分组交换。它根据数据包头部的源IP地址和目的IP地址,将数据包发送到正确的目的地。此外,网络层还定义了标准的分组格式和接口参数,使得分组可以在不同网络间实现漫游。当网络中部分设备不能正常运行时,网络层的设计也确保了网络服务不被中断,已经建立的网络连接依然可以有效地传输数据。
传输层传输层在源结点和目的结点的两个进程实体之间提供可靠的端到端的数据传输。它不仅可以提供不同服务等级、不同可靠性保证的传输服务,还可以协调发送端和接收端之间的传输速度差异。主要的传输层协议包括TCP(传输控制协议)和UDP(用户数据报文协议)。
应用层这是TCP/IP模型的最高层,主要为用户提供多种网络应用程序,如电子邮件、远程登录等。应用层规定应用进程在通信中所遵守的协议,为应用程序提供接口服务。由于并不是所有的网络服务都需要会话层和表示层的功能,因此这些功能逐渐被融合到TCP/IP模型中应用层的那些特定的网络服务中。

TCP/IP如何交互

TCP/IP模型的四层之间通过一系列协议和接口实现交互,确保数据在网络中正确、高效地传输。以下是四层之间交互的简要概述:

网络接口层与网络层的交互
网络接口层负责将数据帧从网络层发送到物理网络,或从物理网络接收数据帧并交给网络层。
当网络层需要发送数据时,它会将数据封装成IP数据包,并交给网络接口层。网络接口层根据硬件的物理地址(如MAC地址)将数据帧发送到网络上。
当网络接口层从网络上接收到数据帧时,它会抽取IP数据包并交给网络层进行处理。

网络层与传输层的交互
网络层主要负责路由选择和分组交换,确保IP数据包能够到达目的主机。
当传输层需要发送数据时,它会将数据封装成TCP或UDP报文段,并指定目的主机的端口号,然后将报文段交给网络层。
网络层将报文段封装成IP数据包,并添加必要的路由信息,然后通过网络接口层发送出去。
当网络层接收到来自网络接口层的IP数据包时,它会根据路由信息将其转发到正确的目的主机,并交给传输层进行处理。

传输层与应用层的交互
传输层为应用程序提供端到端的通信服务,确保数据的可靠传输。
当应用层需要发送数据时,它会将数据通过传输层的接口(如套接字)发送给传输层。
传输层将数据封装成TCP或UDP报文段,并添加必要的控制信息(如序列号、确认号等),然后交给网络层进行传输。
当传输层接收到来自网络层的报文段时,它会根据控制信息进行相应的处理(如重传、排序等),然后将数据通过接口交给应用层。

应用层之间的交互
应用层负责处理各种网络应用程序的逻辑。
当一个应用程序需要发送数据给另一个应用程序时,它会通过应用层的协议(如HTTP、FTP等)将数据格式化为应用层协议所规定的形式,并通过传输层发送出去。
接收端的应用程序通过应用层协议解析接收到的数据,并根据应用程序的逻辑进行相应的处理。

TCP/IP协议栈

其实,我们这个模型是通过TCP/IP协议栈抽象出来的:
计算机网络——TCP/IP网络层次模型,网络,计算机网络通过这个协议栈,我们抽象出来了四层结构。

TCP/IP协议栈主要协议

TCP/IP协议栈中一些主要的协议及其功能:

应用层协议
Telnet:用于远程登录到另一台计算机上,并在那台计算机上执行命令。
FTP (文件传输协议):用于在两台计算机之间传输文件。
SMTP (简单邮件传输协议):用于发送和接收电子邮件。
DNS (域名系统):将人类可读的域名(如www.example.com)转换为计算机可读的IP地址。
传输层协议
TCP (传输控制协议):一种面向连接的协议,提供全双工的字节流,确保数据的可靠传输。
UDP (用户数据报协议):一种无连接的协议,不保证数据的可靠传输,但通常用于实时通信或需要快速响应的应用。
网络层协议
IP (互联网协议):负责数据包的路由和寻址,确保数据包能够到达目的主机。
ICMP (互联网控制消息协议):处理路由器与主机之间的错误和控制消息,例如“目标不可达”消息。
IGMP (互联网组管理协议):用于网络中的多播(将数据发送到一组计算机)。
网络接口层(或链路层)协议
ARP (地址解析协议):将IPv4地址映射到硬件地址(如MAC地址),以便在局域网内进行通信。
RARP (反向地址解析协议):将硬件地址映射到IPv4地址,这在现代网络中较少使用。

TCP/IP 和 OSI之间的区别

TCP/IP和OSI之间的区别主要体现在以下几个方面:

层次结构:OSI参考模型有7层,而TCP/IP参考模型只有4层。虽然两者都有网络层(或称互联网层)、传输层和应用层,但其他层并不相同。TCP/IP的四层有时也被称为链路层(数据链路层)、网络层、传输层和应用层。
服务类型OSI模型的网络层提供面向连接和无连接两种服务,但传输层只提供面向连接服务。而TCP/IP模型在网络层只提供无连接服务,但在传输层却提供面向连接和无连接两种服务。
计算机网络——TCP/IP网络层次模型,网络,计算机网络
概念区分:OSI参考模型中明确区分了服务、接口和协议这三个基本概念,而TCP/IP模型在这方面并不十分清晰。OSI模型中的协议具有更好的隐蔽性,在发生变化时也更容易被替换。
通用性:OSI参考模型是在其协议被开发之前设计出来的,因此更具有通用性,但也意味着在协议实现方面可能存在某些不足。相反,TCP/IP模型则是先有协议和应用再提出模型,并且参照了OSI模型。
适用范围和历史:OSI一般用于理论研究和教学,而TCP/IP则广泛应用于实际的工业生产,特别是互联网领域。TCP/IP协议是互联网的基础协议,广泛应用于全球互联网。
层次交互方式:TCP/IP协议族的层次结构更加紧凑和灵活,各层之间的界限不那么明显,更容易扩展和实现。

面向连接和无连接

面向连接

面向连接是指在用户开始传递信息前,必须在通信双方或更多方间建立起连接的网络。这种连接可以是实在的电路连接,也可以是逻辑的虚连接(虚电路)。面向连接网是端到端的连接通路电信网,电路交换的电信网是依靠一系列交换机协同动作来实现的。
以TCP为例,TCP是面向连接的、可靠的进程到进程通信的协议,它提供全双工服务,即数据可在同一时间双向传输。每一个TCP都有发送缓存和接收缓存,用来临时存储数据。TCP报文段包括源端口号、目标端口号、序号、确认号、首部长度、窗口大小等信息,以确保数据的准确传输。
在面向连接的网络中,通信双方在通信时,要事先建立一条通信线路,其过程包括建立连接、使用连接和释放连接。这种服务的主要特点是在数据传送前,先建立连接,连接建立后再传输数据,数据传送完后,释放连接。

三次握手,四次挥手

三次握手和四次挥手是TCP/IP协议中用于建立连接和断开连接的重要过程。

三次握手:

SYN:客户端向服务器发送一个SYN包,请求建立连接,并等待服务器的确认。SYN包中包含了客户端的初始序列号。
SYN+ACK:服务器收到SYN包后,确认客户端的请求,并发送一个SYN+ACK包给客户端。这个包既是对客户端SYN包的确认,同时也包含了服务器自己的初始序列号,请求客户端确认。
ACK:客户端收到SYN+ACK包后,向服务器发送一个ACK包,表示已经收到服务器的SYN+ACK包,并等待服务器发送数据。至此,三次握手完成,TCP连接建立成功。

四次挥手:

FIN:当客户端完成数据传输后,会向服务器发送一个FIN包,请求断开连接。此时客户端进入FIN_WAIT_1状态。
ACK:服务器收到FIN包后,发送一个ACK包给客户端,确认收到客户端的断开连接请求。此时服务器进入CLOSE_WAIT状态,客户端进入FIN_WAIT_2状态。
FIN:服务器在发送完所有数据后,向客户端发送一个FIN包,请求断开连接。此时服务器进入LAST_ACK状态。
ACK:客户端收到服务器的FIN包后,发送一个ACK包给服务器,表示已经收到并确认断开连接的请求。此时客户端进入TIME_WAIT状态,等待一段时间以确保服务器收到ACK包后关闭连接。服务器收到ACK包后关闭连接,进入CLOSED状态。至此,四次挥手完成,TCP连接断开。

这里简单了解一下,我们之后要细讲。

无连接

无连接是通信技术之一,指的是通信双方不需要事先建立一条通信线路,而是把每个带有目的地址的包(报文分组)送到线路上,由系统自主选定路线进行传输。
无连接模式的典型例子包括邮政系统、IP和UDP协议。在邮政系统中,信件通过天罗地网式的选择路线进行传播,类似于无连接模式中的报文分组传播。而IP和UDP协议作为无连接协议,它们在网络传输中不建立和维护会话连接,只是简单地将数据报发送到目的地,不保证数据报的顺序性和可靠性。
这种无连接的方式有其特定的应用场景和优势,例如在某些需要快速、简单、灵活的通信场景中,无连接模式可能更为适用。然而,由于不建立和维护会话连接,无连接模式在数据传输的可靠性和顺序性方面可能不如面向连接的通信方式。
需要注意的是,无连接并不等于完全不进行任何连接处理。在某些情况下,如HTTP协议中的请求-响应模式,虽然每次请求和响应都是独立的,但服务器在处理完客户的请求并收到应答后,会断开连接。这种断开连接是为了尽快释放资源,以便服务其他客户端。但这并不意味着在整个通信过程中没有任何连接的存在或处理。文章来源地址https://www.toymoban.com/news/detail-840723.html

到了这里,关于计算机网络——TCP/IP网络层次模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络参考模型(OSI七层与TCP/IP协议)

    目录 1 为什么要分层 1.1 层次划分的必要性 1.2 层次划分的方法 1.2 层次划分的优点 2 七层和四层的定义 2.1 七层的介绍 2.1.1 OSI七层参考模型 2.1.2 OSI七层工作原理 2.1.3 PDU 2.2 四层的介绍 2.2.1 TCP/IP 参考模型 2.2.2 TCP/IP协议族的组成 2.2.3 数据封装和解封过程 2.2.4 设备与层的对应

    2024年02月08日
    浏览(55)
  • 计算机网络学习笔记(二)OSI模型与TCP-IP模型

    7层 物链网输会示用(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层) 消耗流量的各个软件和程序。比如发送邮件的FTTP,发送文件的SMTP、万维网(HTTP) 规定两个通信端间传输数据的表达方式。 具体功能: 数据压缩与解压缩 数据加密与解密 数据格式的

    2024年01月22日
    浏览(50)
  • 【计算机网络笔记】TCP/IP参考模型基本概念,包括五层参考模型

    什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率 计算机网络体系结构概念 OSI参考模型

    2024年02月05日
    浏览(44)
  • 【网络】- 计算机网络体系结构 - OSI七层模型、TCP/IP四层(五层)协议

    但凡学习计算机网络知识,肯定绕不过网络协议的,而说的计算机网络协议,总是会听到 OSI七层模型 、 TCP/IP四层协议 ,有些文章又会说成是 TCP/IP五层协议 ,刚入门学这些网络协议时,给我整得一愣一愣的。 这篇文章的目的就是把计算机网络体系的这几个协议给尽可能讲清

    2024年02月03日
    浏览(67)
  • 计算机网络之TCP/IP协议第二篇:OSI参考模型详解

    😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取! 🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

    2024年02月09日
    浏览(53)
  • 小林coding图解计算机网络|基础篇01|TCP/IP网络模型有哪几层?

    小林coding网站通道:入口 本篇文章摘抄应付面试的重点内容,详细内容还请移步: 我们的电脑或手机使用的应用软件都是在应用层实现。应用层 只需要专注于为用户提供应用功能,不用去关心数据是如何传输的 。 而且 应用层是工作在操作系统中的用户态,传输层及以下则

    2024年04月11日
    浏览(55)
  • 【计算机网络】OSI七层模型与TCP/IP四层模型的对应与各层介绍

    OSI(Open Systems Interconnection)模型是一个由国际标准化组织(ISO)定义的七层网络体系结构,用于描述计算机网络中的通信协议。每一层都有特定的功能,而且每一层的功能都建立在它下面的一层之上。 提供网络服务和应用程序之间的接口 包括各种网络应用,如电子邮件、文

    2024年01月23日
    浏览(49)
  • 系分笔记计算机网络OSI七层模型概念、协议和作用以及TCP/IP协议

      计算机网路是系统分析师考试的常考知识点,本篇主要记录了知识点:OSI七层模型概念、协议和作用以及TCP/IP协议中比较重要的考点。   计算机网络的OSI七层模型从底层往上,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   计算机网络

    2024年01月16日
    浏览(56)
  • 深入了解OSI模型:计算机网络的七大层次

    目录 OSI模型 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 OSI模型是一个网络通信的概念模型,用于描述计算机网络中各个不同层次之间的通信和功能。它将网络通信分为七个不同的层次,每个层次负责不同的任务,使得网络通信的设计、开发和管理更加模块化和

    2024年02月07日
    浏览(39)
  • 计算机网络-TCP/IP模型及五层参考模型(OSI与TCP/IP相同点 不同点 5层参考模型及数据封装与解封装)

    OSI:先理论,但没有实践 TCP/IP:先实践,再理论 TCP/IP:基于协议栈而分层 网络接口层:数据链路层与物理层 应用层:包含上三层 异构网络互联:实现不同厂家生产的设备进行相互通信 IP协议面向无连接 传输层是端到端,有实现可靠传输的功能,即有面向连接的功能 传输层

    2024年01月23日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包