Linux复习--网络基础(OSI七层、TCP三次握手与四次挥手、子网掩码计算)

一、ISO/OSI七层模型的分层与作用

1、ISO/OSI的七层模型

2、作用

  • 应用层:为用户提供服务,给用户一个操作界面
  • 表示层:数据提供表示;加密;压缩;
  • 会话层:确定数据是否需要进行网络传递
  • 传输层:
    • 对报文进行分组(发送时)、组装(接收时)
    • 提供传输协议的选择:
      • UDP(用户数据报协议):不可靠的,面向无连接的传输协议(快,不可靠)
      • TCP(传输控制协议):可靠的,面向连接的传输协议(可靠,准确,慢)
      • 端口封装
      • 差错校验
  • 网络层:
    • IP地址编码
    • 路由选择:静态路由、动态路由
  • 传输链路层:MAC地址编制、MAC地址寻址、差错校验
  • 物理层:数据实际传输、电气特性定义

3、扩展

TCP/IP协议族的组成:

二、TCP三次握手和四次挥手

1、传输层协议

  • TCP协议(传输控制协议):可靠的,面向连接的传输协议
  • UDP协议(用户数据报协议):不可靠的,面向无连接的传输协议

2、TCP协议数据格式

3、TCP包头作用

  • 序号Seq序号,占32位,用来标记从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记
  • 确认号:Ack序号,占32位,只有ACK标志位为1时,确认序号字段才有效,Ack=Seq+1
  • 标志位:共6个,即URG、ACK、PSH、RST、SYN、FIN等,具体含义如下:
    • URG:紧急指针(urgent pointer)有效
    • ACK:确认序号有效
    • PSH:接收方应该尽快将这个报文交给应用层
    • RST:重置连接
    • SYN:发起一个新连接
    • FIN:释放一个连接

4、TCP三次握手

  • 第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。
  • 第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack序号J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。
  • 第三次握手:Client收到确认后,检查ack序号是否为J+1,标志位ACK是否为1,如果正确则将标志位ACK置为1,ack序号=K+1,并将该数据包发送给Server;Server检查ack序号是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client和Server之间可以开始传输数据了。

5、TCP四次挥手

  • 第一次挥手:Client发送一个标志位为FIN包,Seq序号=m,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态
  • 第二次挥手:Server收到标志位FIN包后,发送一个标志位ACK给Client,Ack确认序号为m+1,Server进入CLOSE_WAIT状态
  • 第三次挥手:Server发送一个标志位FIN=1,ACK=1,Seq序号=n,Ack确认号=m+1,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态
  • 第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK标志给Server,Ack确认序号=n+1,Server进入CLOSED状态,完成四次挥手

三、子网掩码的计算

1、子网掩码的作用

  • 子网掩码必须和IP地址成对出现,否则没有意义
  • 子网掩码是用于给IP地址划分网络地址与主机地址
  • 和子网掩码1对应的IP地址,代表网络位;和子网掩码0对应的IP地址,代表主机位
  • 子网中只要1是连续的,就是合理子网掩码

2、网络地址与主机地址

3、标准子网掩码

4、子网掩码计算公式

  • 网络地址:把IP地址和子网掩码的二进制,按位进行逻辑与运算
  • 广播地址:有效子网掩码中,有几个0,就把IP地址的后几位换位1
  • 子网个数:有效子网掩码中,有几个1,子网数就是2的几次方
  • 主机个数:有效子网掩码中,有几个0,主机数就是2的几次方减2

5、IP地址分类

6、私有IP地址

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

从0开始linux(5)——vim

欢迎来到博主的专栏:从0开始linux 博主ID:代码小豪 文章目录 vim的多种模式底行模式命令命令模式视块模式(visual block) vim的配置 vim是linux系统的文本编辑器。就像windows的记事本一样。 使用vim指令可以使用vim打开一个文本文…

5G Multicast/Broadcast Services(MBS) (四)

这篇是有关MBS RRC相关的一些基本内容,内容不多,但是感觉很关键,主要包括SI,MBS网络侧相关的内容,L2 协议架构,cell reselection prioritity以及MBS接收的一些内容,希望有帮助。 SI 在MBS场景中,SI和常规5G一样分为Minimum SI和Other SI。Minimum SI是MIB和SIB1,Min…

程序员画图神器,开源

https://github.com/jgraph/drawio 开源、免费、简洁、方便的画图工具,可作为visio或亿图的替代品 drawio简介 在流程图、思维导图、UML图等图表绘制领域,draw.io可以说是一款优秀和受欢迎的在线作图工具。draw.io由JGraph开发,完全开源,拥有超过3万个GitHub Star…

芯片仓管系统主要适用场景有哪些

随着科技产业的飞速发展,芯片作为电子设备的核心部件,其库存管理成为了企业运营中不可或缺的一环。芯片仓管系统,作为专为高效、精准管理芯片库存而设计的信息化工具,正逐步在多个关键领域展现出其不可或缺的价值。那么&#xff0…

APScheduler、Django、Python实现定时任务,以及任务操作

环境:Windows 11、python 3.12.3、Django 4.2.11、 APScheduler 3.10.4 背景:工作需要使用且用法较为复杂,各种功能基本都使用了 事件:20240920 说明:记录,方便后期自己查找 1、搭建基础环境 文件结构图…

免费分享一套SpringBoot+Vue火车票订票管理系统【论文+源码+SQL脚本】,帅呆了~~

大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue火车票订票管理系统,分享下哈。 项目视频演示 【免费】SpringbootVue火车票订票管理系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 传统办法管理信息首先需要花费的时间比较多&…

基于Springboot个性化图书推荐系统JAVA|VUE|SSM计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档(1万字以上)开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统:Window操作系统 2、开发工具:IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

优思学院|TQM和ISO9001有什么关系?

TQM 和 ISO 9001有什么关系?我们把这个问题交给AI,它的回答是: 老实说,说它答错,又不算是错,但说它答对,也不算,总之就是一种模凌两可的感觉。 为什么会这样?因为管理中…

【gradio介绍】Python 可视化 web 神器---gradio介绍

Gradio是一个开源的Python库,专为帮助开发者快速搭建和分享机器学习模型、API或任意Python函数的用户界面(UI)而设计。它基于FastAPI和Svelte,是一个易于部署且功能强大的Web界面构建工具,特别适用于展示和测试机器学习…

在产品上扩大库存?教你一招!全开源!

几乎所有人都会遇到的头疼问题:内存不够,因为很多照片、音频、文档药存储。。。 我们都知道芯片的储存都是寸土寸金的,内部不够只能外扩! 有没有简单一点的方法呢?实在不想编写各种驱动,替换Flash&#x…

探索未来:MultiOn,AI的下一个革命

文章目录 探索未来:MultiOn,AI的下一个革命背景:为什么选择MultiOn?MultiOn是什么?如何安装MultiOn?简单的库函数使用方法场景应用常见问题及解决方案总结 探索未来:MultiOn,AI的下一…

conda环境下module ‘numba.types‘ has no attribute ‘Macro‘问题解决

1 问题描述 conda环境下运行数据处理&#xff0c;报出如下错误&#xff1a; Traceback (most recent call last):File "train_preprocess.py", line 13, in <module>import audioFile "/opt/service/lipsync/audio.py", line 1, in <module>…

增强网络威胁防御能力的云安全新兴技术

一些行业专家强调了基于云的运营的独特网络安全需求&#xff0c;并指出保护敏感数据与传统的本地网络不同。尽管新兴技术并没有改变网络安全专业人员与犯罪分子之间持续的斗争&#xff0c;但它们提高了赌注&#xff0c;使斗争变得更加复杂。 如今&#xff0c;我们面对的是技术…

药用植物的空间多组学:从生物合成途径到工业应用-文献精读51

Spatial multi-omics in medicinal plants: from biosynthesis pathways to industrial applications 药用植物的空间多组学&#xff1a;从生物合成途径到工业应用 摘要 随着分子测序和成像技术的快速发展&#xff0c;药用植物的多组学研究进入了单细胞时代。我们讨论了空间多…

西安云仪:心无旁骛做实业 精益求精造仪表

仪器仪表&#xff0c;被誉为工业生产的“倍增器”&#xff0c;是国家测量精度和科技发展水平的重要体现。近年来&#xff0c;我国仪器仪表产业正在稳步增长。据统计&#xff0c;2023年实现营收10112亿元&#xff0c;正式进入万亿元时代&#xff0c;部分高端产品已经达到或接近国…

阿里云「通义灵码」迎来重磅升级,「AI 程序员」正式亮相!

最近两年&#xff0c;随着大语言模型和生成式 AI 技术的爆火&#xff0c;软件开发领域首当其冲成为了最热门的大模型应用场景之一&#xff0c;GitHub Copilot、通义灵码等 AI 辅助编程工具纷纷问世。这些工具通过自然语言处理和机器学习技术&#xff0c;能够理解开发者的意图&a…

USB转8路串口 USB转8路RS232 USB转8路TTL

一、功能描述 本模块采用CH348Q芯片作为主芯片&#xff0c;CH348 是一款高速 USB 总线的转接芯片&#xff0c;实现USB转八个异步串口UARTA/B/C/D/E/F/G/H 功能&#xff0c; 用于为计算机扩展异步串口&#xff0c;或者将普通的串口设备或者MCU直接升级到USB总线。外加4颗MAX323…

Leetcode 每日一题:Diameter of Binary Tree

写在前面&#xff1a; 最近被学校的 campus involvement 社团活动的招新宣传和选拔&#xff0c;以及找工作频繁的参加招聘会和网上申请忙的焦头烂额&#xff0c;马上又要到来的期中考试让我再次意识到了大学生活的险恶。虽然大家都说学生时代是最幸福的时代&#xff0c;但这个…

Vue3使用通信组件库mitt作为事件总线实现跨组件通信

mitt 介绍: Mitt 是一个在 Vue.js 应用程序中使用的小型事件总线库。该库允许组件进行通信&#xff0c;而不必过度依赖父级或子级组件之间的 props。 先看项目用例&#xff1a; 【 以下转载自&#xff1a;https://blog.csdn.net/yuanlong12178/article/details/139579299 】…

无人机飞手教员培训持证,必须会组装,模拟,维修才能带好学员

无人机飞手员的教培训不应仅仅局限于获取飞行执照或证书&#xff0c;而应是一个全面等多、方面的深入能力且&#xff0c;实践以确保导向能够的过程全面。、一个有效地合格的指导无人机学员飞。手教员不仅需要掌握扎实的飞行技能&#xff0c;还需要具备组装、模拟训练、维修。 组…