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

【计算机网络】基本概念

基本概念

  • IP 地址
  • 端口号
  • 协议
  • 协议分层
  • 封装
  • 分用
  • 客户端
  • 服务器
  • 请求和响应
  • 两台主机之间的网络通信流程

IP 地址

  • 概念:IP 地址主要是用于唯一标识网络主机、其他网络设备(如路由器)的网络地址。简单来说,IP地址用来唯一定位主机。
  • 格式:对于 IPV4 来说,一共有32个比特位,一般用点分十进制来表示,如 192.168.1.0;对于IPV6来说,一共有128个比特位
  • 特色的IP地址,127.0.0.1 用于环回测试

端口号

  • 概念:用于定位主机上的一个进程
  • 格式:0~65535 范围的数字

协议

  • 协议最终在网络上体现的是数据包传输的格式

  • 作用:用于网络数据之间的传输

  • 知名的网络协议:

    • 22 端口:ssh协议
    • 21 端口:ftp协议
    • 23 端口:telnet协议
    • 80 端口:HTTP协议
    • 433 端口:HTTPS协议

协议分层

什么是协议分层

将要实现不同功能的部分进行分层, 下层为上层提供服务, 上层调用下层提供服务的接口, 来实现数据之间的传输。

分层的作用

  • 符合高内聚, 低耦合的编程思想
  • 每一层进行了封装, 每一层都不需要知道另外一层具体的实现细节,只需要知道如何调用接口即可,这样方便程序的开发,程序出现了问题,容易排查问题出现在哪里。
  • 分层方便各层之间的更新迭代,影响范围只是在要更新的那一层中

OSI 七层模型

  • 7 应用层, 针对特定应用的协议
  • 6 表示层, 设备固有数据格式和网络数据格式之间的转换
  • 5 会话层, 通信管理, 负责建立和断开连接, 管理传输层以下的分层
  • 4 传输层, 管理两点之间的数据传输, 负责可靠传输
  • 3 网络层, 地址管理和路由选择
  • 2 数据链路层, 互连设备之间传输和识别数据帧
  • 1 物理层, 以高低电压表示 01 的数据

TCP/IP 五层协议

  • 应用层: 负责程序之间的沟通
  • 传输层: 负责两个主机之间的数据传输
  • 网络层: 负责地址管理和路由选择
  • 数据链路层: 负责数据帧之间的识别和传输
  • 物理层: 负责光/电信号之间的传输

封装

  • 应用层数据通过网络协议层时, 经过每一层协议都需要加上一个数据首部, 这就是所谓的封装
  • 首部信息中一般包含了一些类似于首部有多长, 有效载荷有多长等

在这里插入图片描述

分用

  • 数据封装层帧后, 通过传输介质传输到对应的目的主机后, 每次协议都需要再剥夺每一层对应的首部, 依据首部信息, 将该层的有效载荷交付给上层协议进行相应的处理.

在这里插入图片描述

客户端

  • 客户端可以请求服务提供的数据或者执行特定的任务, 并展现结果给用户

服务器

  • 服务器是一个 powerful 的计算机系统或应用系统, 它提供数据、资源或者服务给网络中的其他计算机系统,这些计算机系统统称为客户端。服务器通常具备强大的处理能力、大量存储设备和丰富的网络通信功能。

请求和响应

客户端向服务器发送请求,服务器给客户端响应

两台主机之间的网络通信流程

  1. 建立连接
  2. 发送请求
  3. 服务器响应
  4. 关闭连接
  5. 重复上述过程
http://www.lryc.cn/news/324421.html

相关文章:

  • Redis入门到实战-第七弹
  • 图像处理学习笔记(一)
  • duckdb学习-1
  • GEE高阶案例——Landsat/Sentinel/MODIS影像进行缨帽变换一行代码实现
  • 数独游戏(c++题解)
  • 【开发方案】Android 应用双卡搜网功能
  • 图论基础|深度优先dfs、广度优先bfs
  • Python从入门到精通秘籍十七
  • Java——抽象类和接口
  • React—— props校验(非typescript校验类型)
  • Go——map操作及原理
  • 网络安全实训Day9
  • kubernetes实战(1)之虚拟机centos搭建k8s集群
  • 基于python+vue分类信息服务平台移动端的设计与实现flask-django-php-nodejs
  • 【蓝牙协议栈】【BLE】低功耗蓝牙配对绑定过程分析(超详细)
  • MySQL表内容的增删查改
  • Java的三大特性之一——多态(完)
  • 算法-最短路径
  • 【软考---系统架构设计师】特殊的操作系统介绍
  • 大模型: 提示词工程(prompt engineering)
  • RabbitMQ的事务机制
  • 41 物体检测和目标检测数据集【李沐动手学深度学习v2课程笔记】
  • 软件包管理(rpm+yum)
  • 网关层针对各微服务动态修改Ribbon路由策略
  • 如何从零开始拆解uni-app开发的vue项目(二)
  • 【生成对抗网络GAN】一篇文章讲透~
  • 【设计模式】Java 设计模式之模板命令模式(Command)
  • 如何在Flutter中实现一键登录
  • Amazon SageMaker + Stable Diffusion 搭建文本生成图像模型
  • FPGA数字信号处理前沿