TCP网络模型

目录

    • 应用层:
    • 传输层:
    • 网络层:
    • 网络接口层:

模型最大的优点就是把服务、接口还有协议这三个概念明确的区分开了,通过模型可以让不同系统的网络之间实现可靠的数据传输.

传输层数据带上TCP头,网络层带上IP头,数据链路层带上 MAC头等一系列操作。ping 是应用层命令

从主机 A 传输数据到主机 B 的过程可以简要描述如下:

应用层:

是网络通信的最顶层,只专注于为用户提供应用功能,不用去关心数据是如何传输的。就类似于我们寄快递的时候,只需要把包裹交给快递员,由他负责运输快递,我们不需要关心快递是如何被运输的。

比如 HTTP、FTP、DNS、SMTP等;应用层是工作在操作系统中的用户态,传输层及以下则工作在内核态

传输层:

传输层负责端到端的可靠数据传输。主机 A 中数据被传递给传输层,传输层将数据分割成合适的数据段,带上序号和校验信息等TCP头,形成传输层的数据报。TCP(传输控制协议)、UDP(用户数据报协议)。段 或 数据报

网络层:

网络层负责网络互联和数据路由。主机 A 中传输层的数据报被传递给网络层,网络层根据目标主机 的 IP 地址,决定将数据报发送到主机 所在的网络。IP(互联网协议),ICMP(互联网控制消息协议)。包

网络接口层:

主要关注通过物理媒介来传输数据,比如网线、电缆、光纤等。比特(Bits),并对传输的数据进行检错和纠错。以太网(Ethernet),ARP(地址解析协议)。帧
在网络包传输的过程中,源 IP 和目标 IP 始终是不会变的,一直变化的是 MAC 地址,因为需要 MAC 地址在以太网内进行两个设备之间的包传输

当数据到达主机 B 后,整个过程会逆向进行,从物理层到应用层,直到数据被主机 B 的应用程序接收和处理


TCP/IP协议族通常被描述为一个四层协议模型,每一层负责不同的通信任务。这四层分别是:

链路层(Link Layer):

链路层负责在物理网络媒介上进行数据的传输。这一层处理物理地址(如MAC地址)、错误检测和纠正,以及数据的成帧。
网络层(Internet Layer):

网络层的主要协议是IP(Internet Protocol),负责将数据包从源主机路由到目的主机。它处理数据包的寻址和路由。
传输层(Transport Layer):

传输层主要涉及两个协议:TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)。TCP 提供面向连接、可靠的字节流传输服务,而 UDP 提供无连接、不可靠的数据报传输服务。
应用层(Application Layer):

应用层包括所有高级协议和应用程序,它们使用下层提供的通信服务来访问网络。例如,HTTP、FTP、SMTP、DNS等都是应用层协议。
每一层都使用下一层提供的服务,并通过特定的协议和服务接口与相邻层交互。数据在发送时从应用层向下传递到链路层,每一层可能添加一些头部信息(如TCP头部、IP头部等),然后在链路层通过网络传输。接收时,数据从链路层向上传递,每一层移除相应的头部信息,直到数据到达应用层。

TCP/IP模型有时也被称为OSI模型的简化版,OSI(Open Systems Interconnection)模型是一个七层网络通信模型,包括:

物理层
数据链路层
网络层
传输层
会话层
表示层
应用层
TCP/IP模型与OSI模型的主要区别在于TCP/IP模型将OSI的会话层、表示层和应用层的功能合并为应用层,同时将OSI的数据链路层和物理层合并为链路层。这种简化有助于更好地反映实际的互联网协议结构。


数据链路层(Data Link Layer)和网络接口层(Network Interface Layer)在某些文献中可能会被交替使用,但实际上它们指的是OSI模型中不同层的功能,尽管在实际应用中它们紧密相关。

数据链路层(Data Link Layer):

OSI模型的第二层,主要负责在相邻网络节点之间传输帧(frame)。这一层的协议定义了如何组织数据成帧、如何同步传输、错误检测与纠正机制等。
数据链路层通常包括两个子层:逻辑链路控制(LLC)子层和媒体访问控制(MAC)子层。
逻辑链路控制子层负责数据的完整性和流量控制,而媒体访问控制子层则处理物理层面的访问规则,如以太网的CSMA/CD协议。
网络接口层(Network Interface Layer):

这个术语通常不单独使用,而是作为数据链路层的一部分,特别是与物理层(Physical Layer)的接口部分。在某些文献中,网络接口层可能被用来指代物理层和数据链路层的结合,即负责实际的网络硬件接口。
网络接口层更侧重于物理层面的实现,如电缆、交换器、路由器接口等,以及如何将数据以比特流的形式在物理媒介上进行传输。
在实际的计算机网络实现中,数据链路层和物理层的功能通常是由网络接口卡(NIC)或网络适配器来完成的。网络接口卡同时处理数据链路层的帧传输和物理层的电气信号或光信号传输。

总的来说,数据链路层更侧重于逻辑上的数据传输和错误控制,而网络接口层(如果单独考虑的话)更侧重于物理硬件层面的实现。在大多数情况下,当我们讨论网络通信时,这两个概念是紧密联系在一起的,共同确保数据在物理媒介上的有效传输。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/46868.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前后端数据交互设计到的跨域问题

前后端分离项目的跨域问题及解决办法 一、跨域简述 1、问题描述 这里前端vue项目的端口号为9000,后端springboot项目的端口号为8080 2、什么是跨域 当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域 当前页面url被请求页面url是否…

PostgreSQL使用(一)

说明:SQL语言分为以下四类, DDL(数据库定义语言):DROP、CREATE、ALTER等语句; DML (数据库操作语言):INSERT、UPDATE、DELETE语句; DQL(数据库查…

cuda缓存示意图

一、定义 cuda 缓存示意图gpu 架构示意图gpu 内存访问示意图 二、实现 cuda 缓存示意图 DRAM: 通常指的是GPU的显存,位于GPU芯片外部,通过某种接口(如PCIE)与GPU芯片相连。它是GPU访问的主要数据存储区域,用于存储大…

NoSql选择题解

1. (单选题)以下不属于ACID原则的是( )。 A. 相对性 B. 原子性 C. 隔离性 D. 持久性 正确答案: A :相对性; 2. (单选题)以下NoSQL数据库中,哪个是内存数据库()。 A. Bigtable B. Redis C. Hbase D. MongoDB 正确答案: B :Redis; …

java导出PDF详细教程+各种踩坑

直接上代码了 所需依赖: <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.4.3</version> </dependency><dependency><groupId>com.itextpdf</groupId><art…

使用dnscat2 进行dns隧道反弹shell——直连模式linux对windows

直连模式&#xff1a;客户端直接向指定IP地址的DNS服务器发起DNS解析请求 环境搭建 搭建服务端 git clone https://github.com/iagox86/dnscat2.git cd dnscat2/server/ gem install bundler apt-get install ruby-dev bundle install 过程会有点慢 开启服务端 ruby ./dn…

二叉搜索树的实现[C++]

文章目录 搜索二叉树概念二叉搜索树的功能查找 实现搜索二叉树节点的定义建立搜索二叉树接口插入搜索打印删除 总结 今天本堂主来一起讨论下什么是搜索二叉树&#xff0c;和如何实现二叉搜索树 搜索二叉树 那么二叉搜索树似乎如何实现搜索呢&#xff1f;二叉搜索树和普通二叉…

linux 之时间子系统(八):hrtime 的实现机制

一、hrtimer 概述 在Linux内核中已经存在了一个管理定时器的通用框架。不过它也有很多不足&#xff0c;最大的问题是其精度不是很高。哪怕底层的定时事件设备精度再高&#xff0c;定时器层的分辨率只能达到Tick级别&#xff0c;按照内核配置选项的不同&#xff0c;在100Hz到10…

数据库管理1

数据库管理 数据库运维。 sql语句 数据库用来增删改查的语句 备份 数据库的数据进行备份 主从复制&#xff0c;读写分离&#xff0c;高可用。 数据库的概念和相关的语法和规范&#xff1a; 数据库&#xff1a;组织&#xff0c;存储&#xff0c;管理数据的仓库。 数据库的管理系…

Vue3中的ref函数

在Vue 3中&#xff0c;ref函数是用来创建一个响应式的基本数据类型的函数。通过ref函数创建的变量会被自动包装成一个响应式对象&#xff0c;当这个变量的值发生变化时&#xff0c;相关的视图会自动更新。 下面是ref函数的基本用法和特点&#xff1a; 基本用法&#xff1a; …

一篇文章让你掌握计算网络的HTTP协议!!

HTTP 浏览器的服务原理http协议webTCP/IP协议族TCP/IP协议族分层应用层传输层网络层链路层数据包的封装过程HTTP数据传输过程传输层——TCP三次握手第一次握手第二次握手第三次握手三次握手的目的DNS域名解析HTTP完整事务处理过程HTTP协议的特点支持客户/服务器模式简短快速灵活…

钡铼Modbus TCP耦合器BL200实现现场设备与SCADA无缝对接

前言 深圳钡铼技术推出的Modbus TCP耦合器为SCADA系统与现场设备之间的连接提供了强大而灵活的解决方案&#xff0c;它不仅简化了设备接入的过程&#xff0c;还提升了数据传输的效率和可靠性&#xff0c;是工业自动化项目中不可或缺的关键设备。本文将从Modbus TC、SCADA的简要…

Apache网页优化(企业网站结构部署与优化)

本章结构 一、Apache网页优化 在使用 Apache 作为 Web 服务器的过程中&#xff0c;只有对 Apache 服务器进行适当的优化配置&#xff0c;才能让 Apache 发挥出更好的性能。反过来说&#xff0c;如果 Apache 的配置非常糟糕&#xff0c;Apache可能无法正常为我们服务。因此&…

Java8的新特性

Java8的新特性 一、函数式接口1、Java内置的函数式接口 二、Lambda表达式1、Lambda作用2、语法3、Lambda表达式的六种使用3.1、抽象方法&#xff1a;无参、无返回值3.2、抽象方法&#xff1a;需要传一个参数、无返回值3.3、抽象方法&#xff1a;需要传一个参数&#xff08;类型…

Linux网络攻击防御高级指南:结合 iftop 和 iptables

Linux网络攻击防御高级指南&#xff1a;结合 iftop 和 iptables&#xff08;含规则审查&#xff09; 网络攻击&#xff0c;特别是DDoS&#xff08;分布式拒绝服务&#xff09;攻击&#xff0c;可能导致服务器带宽资源枯竭&#xff0c;严重影响服务稳定性。本高级指南将引导您如…

【笔记】FLOPs 和 FLOPS: 前者(FLOPs) 越大,说明模型的计算复杂度越高;后者(FLOPS)越大,说明硬件的计算速度越快

FLOPs&#xff08;Floating Point Operations&#xff09;&#xff1a;这是指一个模型在一次前向传播中需要进行的浮点运算次数&#xff0c;是一个衡量模型计算复杂度的指标。FLOPs越大&#xff0c;说明模型的计算复杂度越高。 FLOPS&#xff08;Floating Point Operations Pe…

【iOS】OC类与对象的本质分析

目录 前言clang常用命令对象本质探索属性的本质对象的内存大小isa 指针探究 前言 OC 代码的底层实现都是 C/C代码&#xff0c;OC 的对象都是基于 C/C 的数据结构实现的&#xff0c;实际 OC 对象的本质就是结构体&#xff0c;那到底是一个怎样的结构体呢&#xff1f; clang常用…

IDEA实现SpringBoot项目的自打包自发布自部署

目录 前言 正文 操作背景 自发布 自部署 尾声 &#x1f52d; Hi,I’m Pleasure1234&#x1f331; I’m currently learning Vue.js,SpringBoot,Computer Security and so on.&#x1f46f; I’m studying in University of Nottingham Ningbo China&#x1f4eb; You can reach…

社交媒体安全:个人信息泄露与社交工程攻击的防范

社交媒体安全&#xff1a;个人信息泄露与社交工程攻击的防范 社交媒体平台的普及带来了个人信息泄露和社交工程攻击的风险。个人信息泄露可能导致身份盗窃、诈骗等问题&#xff0c;而社交工程攻击则利用心理学和社会学手段欺骗用户&#xff0c;获取敏感信息或系统访问权限。 个…

用户excel对CAN进行图形化展示

在Excel中对CAN数据进行图形化展示&#xff0c;用户可以通过以下几个步骤来实现&#xff1a; 一、数据准备 导出CAN数据&#xff1a;首先&#xff0c;需要将CAN数据从CAN分析工具或设备中导出为Excel支持的格式&#xff08;通常是.xlsx或.csv&#xff09;。大多数CAN系列工具软…