计算机网络知识点全梳理(一.TCP/IP网络模型)

server/2024/12/17 16:50:21/

目录

TCP/IP网络模型概述

应用层

什么是应用层

应用层功能

应用层协议

传输层

什么是传输层

传输层功能

传输层协议

网络

什么是网络

网络层功能

网络层协议

数据链路层 

什么是数据链路层

数据链路层功能

物理层 

物理层的概念和功能


写在前面

本系列文章:

网络>计算机网络知识点全梳理(二.HTTP知识点总结)

网络>计算机网络知识点全梳理(三.TCP知识点总结)

网络>计算机网络知识点全梳理(四.IP知识点总结)

TCP/IP网络模型概述

在同一台设备上,进程间通信可以通过多种机制实现,例如管道、消息队列、共享内存和信号等。当涉及到不同设备上的进程间通信时,就需要依赖网络通信。由于设备种类繁多,为了实现广泛的兼容性,人们制定了一系列通用的网络协议来标准化通信过程。这些协议确保了不同设备间能够有效地进行数据交换和通信。

网络模型是分层的,有五层(应用层、传输层、网络层、数据链路层、物理层),也可分为四层(把数据链路层和物理层合并为网路接口层)。

下面对每一层进行介绍。

应用层

什么是应用层

应用层是TCP/IP网络模型中的最顶层,它位于传输层之上,直接与用户和应用程序交互。应用层的主要目的是为应用程序提供访问网络服务的接口和协议,使得用户可以方便地使用网络资源。

应用层功能

应用层使得用户可以无缝地使用网络应用,而无需了解背后的网络技术细节。

比如说网页浏览:当你使用浏览器访问一个网站时,浏览器会通过HTTP或HTTPS协议与网站的服务器进行通信。应用层在这里负责处理网页请求和响应的格式化,以及确保数据的安全传输。

应用层协议

  • HTTP(超文本传输协议):用于网页浏览。

  • HTTPS(安全超文本传输协议):HTTP的安全版本,使用SSL/TLS加密。

  • FTP(文件传输协议):用于文件的上传和下载。

  • SMTP(简单邮件传输协议):用于发送电子邮件。

  • IMAP(互联网消息访问协议):用于访问和管理电子邮件。

  • DNS(域名系统):将域名转换为IP地址。

传输层

什么是传输层

应用层的数据包会传给传输层,传输层(Transport Layer)是为应用层提供网络支持的。传输层的主要功能是为应用程序提供端到端的通信服务,确保数据的完整性和可靠性。

传输层功能

数据分段:传输层负责将应用层发送的大型数据分割成较小的单元,这些单元在网络层中被称为数据包或分组。

流量控制:传输层通过滑动窗口机制来控制数据的发送速率,防止发送方的数据流量超过接收方的处理能力。

错误检测和纠正:传输层提供错误检测机制,确保数据在传输过程中的完整性。如果检测到错误,传输层可以请求重传损坏的数据包。

拥塞控制:传输层监控网络的拥塞情况,并相应地调整数据传输速率,以避免网络过载。

端口管理:传输层使用端口号来区分同一主机上运行的不同服务,允许多个应用程序同时使用网络

传输层协议

传输层主要采用两种协议:TCPUDP

  • TCP,即传输控制协议(Transmission Control Protocol),是大多数应用的首选,包括HTTP等应用层协议。TCP提供了一系列特性以确保数据传输的可靠性,包括流量控制、超时重传和拥塞控制。

  • UDP(用户数据报协议)则更为简洁,它仅负责数据包的发送,不保证数据的到达,这使得UDP在实时性和传输效率方面具有优势。

网络

什么是网络

网络层的主要功能是负责数据包从源到目的地的传输和路由选择。在现实世界的网络环境中,数据传输路径错综复杂,涉及多种线路和节点。网络层的设计宗旨在于高效地处理这些复杂的路由选择,确保数据能够顺利地从源头到达目的地。

网络层功能

路由选择:实际场景中,两台设备并不是用一条网线连接起来的。而是通过很多网关、路由器、交换机等众多网络设备连接起来的,那么就会形成很多条网络的路径,因此当数据包到达⼀个网络节点,就需要通过算法决定下⼀步走哪条路径。

逻辑寻址:网络层使用IP地址来标识网络上的每个设备,确保数据包能够被正确地寻址和传输。

分组转发:网络层将传输层传来的数据分割成较小的单元,称为数据包或分组,并通过网络进行转发。

拥塞控制:虽然拥塞控制主要在传输层实现,但网络层也参与监控网络流量,以避免网络拥塞。

网络层协议

网络层的主要协议是互联网协议(IP),它包括:

  • IPv4:当前最广泛使用的互联网协议版本,使用32位地址,提供大约43亿个地址。

  • IPv6:为了解决IPv4地址耗尽问题而设计的下一代互联网协议,使用128位地址,极大地扩展了地址空间。

数据链路层 

什么是数据链路层

数据链路层是TCP/IP网络模型和OSI七层模型中的第二层,它位于物理层之上,网络层之下。这一层的主要任务是为网络层提供可靠的数据传输服务,确保数据帧在相邻节点之间的物理网络中无差错传输。

数据链路层功能

在现实世界的网络环境中,不同的网络(如你家和我家的网络)是相互独立的。数据传输不仅可以在同一个网络内部进行,还可以跨越不同的网络。当数据需要跨越网络时,路由器作为连接不同网络的关键设备,利用其路由表来确定数据包的下一跳IP地址。

路由器如何识别特定IP地址对应的设备呢?这就需要数据链路层的介入。数据链路层负责在网络中的设备间建立链路级别的传输服务。每台设备的网卡都分配有一个唯一的MAC地址,用于标识该设备。路由器在确定了下一跳的IP地址后,会通过地址解析协议(ARP)来查询该IP地址对应的MAC地址,从而确保数据能够准确地传输到目标设备。

简而言之,数据链路层通过MAC地址为网络层提供了必要的链路级别传输服务,使得路由器能够有效地在不同网络间转发数据包。

物理层 

物理层的概念和功能

物理层负责网络通信的物理基础,主要是为数据链路层提供⼆进制传输的服务,是网络通信的基石,它确保了数据能够在物理媒介上以电子信号的形式传输,为上层网络提供了必要的物理基础。


http://www.ppmy.cn/server/150950.html

相关文章

vue webpack详情配置说明

Vue 和 Webpack 使用说明1. 创建 Vue 项目使用 Vue CLI 创建一个新的 Vue 项目是最简单的方式。Vue CLI 内部使用 Webpack 进行构建。npm install -g vue/cli vue create my-project cd my-project npm run serve## 2. 项目结构创建的 Vue 项目通常具有以下结构:my-…

RabbitMQ 和 Kafka

RabbitMQ和Kafka是两种广泛使用的消息队列系统,它们在多个方面有着显著的差异。以下是对它们的全方位深度对比: 设计理念: RabbitMQ基于AMQP协议,强调易用性和灵活性,支持多种消息模式和可靠的消息传递。Kafka专为处理…

后端开发工程师需要掌握哪些设计模式?

大家好,我是袁庭新。 作为后端开发者,学习和掌握设计模式是非常有必要的。不仅可以帮助后端开发者更好地设计和实现软件架构,还可以提高代码的质量和可维护性。此外,设计模式也是后端开发面试中常见的考点之一,掌握它…

动态导出word文件支持转pdf

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、功能说明二、使用步骤1.controller2.工具类 DocumentUtil 导出样式 前言 提示:这里可以添加本文要记录的大概内容: 例如&#xff…

Web安全攻防入门教程——hvv行动详解

Web安全攻防入门教程 Web安全攻防是指在Web应用程序的开发、部署和运行过程中,保护Web应用免受攻击和恶意行为的技术与策略。这个领域不仅涉及防御措施的实现,还包括通过渗透测试、漏洞挖掘和模拟攻击来识别潜在的安全问题。 本教程将带你入门Web安全攻…

SpringMVC 学习笔记

在 Web 开发的世界里,SpringMVC 是一个极为重要的框架,它能够帮助我们构建高效、灵活的 Web 应用程序。 一、MVC 设计理念 MVC,即 Model - View - Controller,是一种将软件系统划分为三个主要部分的设计模式。它的出现旨在实现各…

AI监控赋能健身馆与游泳馆全方位守护,提升安全效率

一、AI视频监控技术的崛起 随着人工智能技术的不断发展,AI视频监控正成为各行业保障安全、提升效率的关键工具。相比传统监控系统,AI技术赋予监控系统实时分析、智能识别和精准预警的能力,让“被动监视”转变为“主动防控”。 二、AI监控应用…

使用 imageio 库轻松处理图像与视频

使用 imageio 库轻松处理图像与视频 imageio 是一个 Python 库,用于读取和写入多种图像和视频格式。它功能强大、易于使用,广泛应用于图像处理、视频编辑和数据可视化等领域。本篇文章将介绍 imageio 的基础功能、常见用法以及高级操作。 一、安装 imag…