当前位置: 首页 > news >正文

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.mrgr.cn/news/34906.html

相关文章:

  • Transformer-LSTM网络的轴承寿命预测,保姆级教程终于来了!
  • 数据结构和算法之树形结构(3)
  • 花半小时用豆包Marscode 和 Supabase免费部署了一个远程工作的导航站
  • 2025 广州国际新能源汽车功率半导体技术展览会与您相约广州
  • linux文件目录指令合集--拷贝、移动、查看
  • 到底是谁配谁-《分析模式》漫谈33
  • 【附实例】Python字典的各种操作
  • c++哈希
  • 算法:二维数组查找
  • UWB为什么是首选的室内定位技术
  • 【VMware】虚拟机安装
  • 基于Java+Jsp+SpringMVC漫威手办商城系统设计和实现
  • 蓝牙技术|详谈蓝牙信道探测技术,可实现厘米级精准定位
  • Google 提供基于AI的模糊测试框架
  • Axure-本地发布,局域网内用户访问
  • 如何使用MacPorts安装tesseract来进行简单的OCR识别
  • C++中stack类和queue类
  • 【Canvas与诗词】铁马冰河入梦来
  • lambda表达式详解
  • AI赋能千人千面营销:从数据采集到精准用户画像的全流程解析