TCP/IP基础知识笔记

应用层:为用户提供应用功能,比如 HTTP、FTP、Telnet、DNS、SMTP等。

                应用层是工作在操作系统中的用户态,传输层及以下则工作在内核态。

传输层:为应用层提供网络支持。

                *TCP包含众多特性比如流量控制、超时重传、拥塞控制等因此可实现可靠传输。

                *UDP只负责传输不管是否到达,不可靠传输,但是实时性好。

                *当传输层的数据包大小超过 MSS(TCP 最大报文段长度) ,                                                           就要将数据包分块应用层数据包 ,传输层分割为TCP段;

                *端口:应用层应用编号。

                *传输层的报文中会携带端口号,因此接收方可以识别出该报文是发送给哪个应用。

                *实际的传输功能就交给下一层让其作为应用间数据传输的媒介,实现应用到应用的通信

网络层:负责将数据从一个设备传输到另一个设备

                *需要将 IP 地址分成两种意义:

                        一个是网络号,负责标识该 IP 地址是属于哪个「子网」的;

                        一个是主机号,负责标识同一「子网」下的不同主机;

                *子网掩码才能算出 IP 地址 的网络号和主机号。

                        IP地址与子网掩码按位与得网络号

                        IP地址与子网掩码取反再按位与得主机号

                *IP 协议会将传输层的报文作为数据部分,再加上 IP 包头组装成 IP 报文,                                         如果 IP 报文大小超过 MTU(以太网中一般为 1500 字节)就会再次进行分片

网络接口层:负责在以太网、WiFi 这样的底层网络上发送数据帧

 

 网络接口层的传输单位是(frame)

IP 层的传输单位是(packet)

TCP 层的传输单位是(segment)

HTTP 的传输单位则是消息或报文(message)

但这些名词并没有什么本质的区分,可以统称为数据包

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

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

相关文章

Java多线程下的单例模式参考

Java多线程下的单例模式参考 单例有多种的写法,本例是懒汉式单例的一种写法。在高并发环境下需要注意的是: 1.单例在并发访问并调用其相应的getInstance方法的时候也会造成创建多个实例对象,加锁是必要的。 2.使用synchronized是比较好的解…

【SpringBoot】SpringBoot-Admin 服务监控 + 告警通知

简单介绍 Spring Boot Actuator 是 Spring Boot 自带的一个功能模块, 提供了一组已经开箱即用的生产环境下常用的特性和服务,比如应用程序的健康检查、信息暴露、度量收集、日志记录等。 在实际项目中,Actuator 可以帮助我们快速了解应用程序…

使用dhtmlx-gantt甘特图插件定制预约表【实战】

示例传送门 定制预约表展示 一、安装 npm i dhtmlx-gantt二、配置解释与汇总 //自定义表头列 gantt.config.columns = [{name: "

想学会ai绘画软件生成?告诉你ai绘画图片生成有什么软件

小铭和晓虹是两位对艺术和创造有浓厚兴趣的大学生。他们一直梦想能够创作出独特而令人惊叹的绘画作品。然而,他们也意识到绘画是一项需要长时间学习和实践的技能。幸运的是,他们在寻找ai绘画图片生成有什么软件的时候,认识到了很多新的软件&a…

SpringBoot 项目使用 Redis 对用户IP进行接口限流

本文主要参考了该篇文章:https://www.zhihu.com/question/586213782/answer/3038040317?utm_id0 文章目录 一、思路1.1 固定时间段(旧思路)1.1.1 思路描述1.1.2 思路缺陷 1.2 滑动窗口(新思路)1.2.1 思路描述1.2.2 Re…

2023年Java最新面试题

由【后端面试题宝典】提供 和 equals 的区别是什么? 对于基本类型,比较的是值;对于引用类型,比较的是地址;equals不能用于基本类型的比较;如果没有重写equals,equals就相当于;如果重…

ES6基础语法

目录 解构 数组解构 对象解构 基本数据解构 对象 对象简写 箭头函数 扩展运算符 函数参数解构 对象API拓展 Object.is() Object.assign() Object.getPrototypeOf() Object.setPrototypeOf() Object.keys() Object.values() Object.entries() Object.fromEntries(…

学习PostgreSQL的优势

学习 PostgreSQL 可以为您打开许多就业机会。 PostgreSQL 是一种强大的关系型数据库管理系统,被广泛用于企业和组织中的数据管理和应用程序开发。 以下是一些学习 PostgreSQL 可能帮助您找到的工作领域: **1.数据库管理员:**作为 PostgreSQ…

rocketmq使用mqtt协议

文章目录 前言一、安装rocketmq二、打包rocketmq-mqtt三、配置rocketmq-mqtt四、初始化操作五、启动六、测试 前言 rocketmq从4.9.3开始,可以兼容mqtt协议,需要安装编译一个rocketmq-mqtt工程,参考:https://rocketmq.apache.org/…

Mac上快速将视频转化为GIF动图

1、找到需要转为GIF的视频,使用QuickTime Player打开,找到屏幕左上角的QuickTime Player菜单,点击【编辑】-【修剪】 2、视频下方会出现一个时间轴,拖动选取自己想要的时间段,修剪完成后保存 3、右键剪辑好的视频&…

MVC三层架构

1.MVC三层架构 MVC(Model-View-Controller)是一种常见的软件设计模式,用于组织和管理应用程序的代码和逻辑。它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器&#…

Clickhouse数据一致性和物化视图

Clickhouse 一、数据一致性的保证1.通过Group by对数据去重2.通过 FINAL 查询 二、物化视图1.物化视图与普通视图的区别2.优缺点3.基本语法 三、MaterializeMySQL引擎1.特点2.使用细则 四、常见问题排除分布式 DDL某数据节点的副本不执行数据副本表和数据不一致副本节点全量恢复…