网络知识1-TCP/IP模型

news/2024/11/29 5:17:07/

从用户端到服务端,tcp/ip模型可分为应用层、传输层、网络层、网络接口层 以下使用寄快递为例进行解释

应用层职责:

只关注与为用户提供应用功能,如HTTP、FTP、telnet、DNS、SMTP等 ,应用层的职责就像我们寄快递时将快递给快递员,不关心他们是如何运输的

传输层职责:

应用层的数据包传给传输层,传输层则是为应用层提供网络支持的。其作为应用间数据传输的媒介,帮助实现应用到应用间的通信,而实际的传输功能在网络层实现。就像我们寄快递时一站到下一站应采用什么交通工具进行运输的确定。

传输层有两个协议:

tcp(传输控制协议\可靠性传输协议)和udp,
tcp和udp的区别:

  1. tcp传输较为可靠,其在传输中会关注数据是否正确传输给对方,且对方是否正常接收到;而udp不会关心我是否发送成功,也不会关心对方是否收到,我就只管发
  2. tcp由于可靠性较强,所以比udp多了很多特征,如:流量控制、超时重传、拥塞控制等等,这些都是为了保证数据包正常的传输
  3. udp相对于tcp而言较为简单,传输效率较高
  4. 但是udp也可以实现可靠性传输,但是其效率就会大大减小,且实现较难

网络层职责:

负责将数据从一个设备传输到另一个设备,常用的有Ip协议,

IP协议的作用:
  1. 从一堆设备中找到要发送到的目的地设备,即寻址
    寻址的过程:
    以10.100.122.0/24为例
    Ip地址分为两种意义,1—网络号,负责标识该IP地址是属于哪个【子网】的;2—主机号,负责标识同一子网下的不同主机。
    首先通过IP识别出子网掩码即 以上ip中的24转化为子网掩码为:255.255.255.0,即前24为1,后8为0:11111111 1111111 11111111 00000000
    10.100.122.0和255.255.255.0进行位于运算-----得到网络
    在这里插入图片描述

先匹配到相同的网络号,再在这个子网中去匹配对应的主机
将 255.255.255.0 取反后与IP地址进行进行按位与运算------得到主机号2
在这里插入图片描述
2. IP的另一个作用:
路由:决定数据包到达某个网点后下一步选择哪个路径进行传输
在这里插入图片描述

IP寻址的作用告诉我们的快递下一站将到达哪里,路由的作用则是根据【下一个目的地】选择路径

网络接口层:

接口网络层负责发送数据,其将网络层的数据报加上MAC头部,MAC包含了发送方和接收方的MAC地址信息,我们可以通过APR协议获得对方的MAC信息。所以说网络接口层为网络层提供 [链路级别] 传输的服务。负责在以太网、wifi这样的底层网络上发送原始数据包,工作在网卡这个层次上,使用MAC地址来标识网络上的设备。

参考链接: 小林coding


http://www.ppmy.cn/news/1550817.html

相关文章

微信小程序蓝牙writeBLECharacteristicValue写入数据返回成功后,实际硬件内信息查询未存储?

问题:连接蓝牙后,调用小程序writeBLECharacteristicValue,返回传输数据成功,查询硬件响应发现没有存储进去? 解决:一直以为是这个write方法的问题,找了很多相关贴,后续进行硬件日志…

Java项目实战II基于SpringBoot的教学资料管理系统(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、核心代码 五、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。 一、前言 在教育信息化的大背景下,教学资料的高效管…

操作系统 内存管理——针对实习面试

目录 操作系统 内存管理什么是虚拟内存?什么是物理内存?解释虚拟内存和物理内存的区别什么是分页式存储?什么是分段式存储?解释分页式存储和分段式存储的区别什么是内存碎片?描述几种常见的内存分配算法描述几种常见的…

三格电子—EtherNet IP转Modbus RTU网关

EtherNet/IP转Modbus RTU网关 SG-EIP-MOD-210 产品用途 SG-EIP-MOD-210网关可以实现将Modbus接口设备连接到 EtherNet/IP网络中。用户不需要了解具体的Modbus和 EtherNet/IP协议即可实现将Modbus设备挂载到 EtherNet/IP接口的PLC上,并和Modbus设备进行数据交互。拓…

Github 2024-11-23 Rust开源项目日报 Top10

根据Github Trendings的统计,今日(2024-11-23统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Rust项目10TypeScript项目2Meilisearch: 快速搜索API,提升工作效率 创建周期:2252 天开发语言:Rust协议类型:MIT LicenseStar数量:44442 个…

MySQL(8)【聚合函数 | group by分组查询】

阅读导航 引言一、聚合函数1. 简介2. 使用示例(1)COUNT() 函数(2)SUM() 函数(3)AVG() 函数(4)MAX() 函数(5)MIN() 函数 二、group by分组查询1. 基本语法2. 按…

【案例学习】如何使用Minitab实现包装过程的自动化和改进

Masimo 是一家全球性的医疗技术公司,致力于开发和生产各种行业领先的监控技术,包括创新的测量、传感器和患者监护仪。在 Masimo Hospital Automation 平台的助力下,Masimo 的连接、自动化、远程医疗和远程监控解决方案正在改善医院内外的护理…

多线程 相关面试集锦

什么是线程? 1、线程是操作系统能够进⾏运算调度的最⼩单位,它被包含在进程之中,是进程中的实际运作单位,可以使⽤多线程对 进⾏运算提速。 ⽐如,如果⼀个线程完成⼀个任务要100毫秒,那么⽤⼗个线程完成改…