IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 初识网络协议 -> 正文阅读

[网络协议]初识网络协议


一、关于网络通信

网络通信: 网络中主机进程间的数据传输
网络划分:
(1)局域网
一般来说,某个小范围组建的网络,内部可以传输数据
典型:家里的路由器,连接多台主机
(2)广域网
多个局域网构建的一个大型网络
全球公认的广域网(一般是通过网络运营商提供的网络服务,来访问):公网,外网——广域网的子集
在这里插入图片描述
能够ping通,就是可以访问对应主机
一个局域网内部可以互相访问,但多个局域网之间,如果没有使用外部网络连接,是不能互相访问的
即使使用外部网络连接,但基于局域网的IP,是内部才能用,外部用不了

我的局域网IP,只有我这个局域网才能用

二、网络通信基础

1.IP地址

用于标识网络中唯一的一台主机
局域网ip是内部才能用(内部唯一),不同的局域网ip可能有重复
公网ip是全局唯一

格式:4位,每一位是0~255之间的数字(8位的二进制数)
本机ip:127.0.0.1

2.端口号

用于标识主机中的进程
发送: 发送端的进程向发送端口写数据,系统会把数据经过网卡传输到网络的其他设备
接收: 先由网卡接收数据,系统会把数据发送到指定的端口(数据中指定),再由端口对应的进程来接收

注意事项:
两个不同的进程,不能绑定同一个端口号,但一个进程可以绑定多个端口号(这里是两个不相关的进程)

例:学习测试过程中,我安装了一个mysql数据库,存在一个问题:
开发学习的时候也安装了mysql,同时存在两个mysql进程,绑定的都是3306端口
如果发现还有一个mysql:双击,改为停止,手动启动

3.认识协议

网络协议: 网络通信时,数据在网络设备中流转,都需要遵守的一组规则和约定
三要素:

  1. 语法
  2. 语义
  3. 时序

协议最终体现为在网络上传输的数据包的格式
http协议:协议格式
请求数据包4个部分组成
响应数据包4个部分组成
作用:双方使用一致的协议,接收端才知道如何解析

为知名协议预留的端口号

  1. 22端口:ssh协议
  2. 80端口:http协议
  3. 443端口:https协议

4.五元组

在TCP/IP协议中,用五元组来表示一个网络通信

  1. 源IP: 表示源主机
  2. 源端口号: 标识源主机中该次通信发送数据的进程
  3. 目的IP: 标识目的主机
  4. 目的端口号: 标识目的主机中该次通信接收数据的进程
  5. 协议号: 标识发送进程和接收进程双方约定的数据格式

五元组的5个字段,一次网络通信必须都指定好

查看五元组信息:

Windows:netstat -ano | findstr “查询字符串”
Linux:netstat -anp | grep “查询字符串”

三、协议分层

好处: 定义了不同网络分层,是用来干嘛的,调用方不用关心实现细节,而使用统一的接口来调用

1.OSI七层模型

一种偏理论的模型,并没有实际落地(真是搭建网络,采取的网络分层,没有把OSI七层模型全部实现)

  1. 物理层: 网线或wifi(电磁波)来传输0,1数据
  2. 数据链路层: 识别数据帧(发送数据包到下一个网络硬件设备)
  3. 网络层: 地址与路由选择
  4. 传输层: 确保数据传输的可靠
  5. 会话层: 建立会话(什么时候建立连接,什么时候断开连接)
  6. 表示层: 接收端用什么方式来展示数据
  7. 应用层: 应用程序所处的分层

从低到高的顺序
5,6是没有落地,真实实现的

2.TCP/IP 五层/四层模型

在这里插入图片描述

  • 对于一台主机,他的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四层
  • 对于一台路由器,它实现了从网络层到物理层,也即是TCP/IP五层模型的下三层
  • 对于一台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层
  • 对于集线器:他只实现了物理层

网络通信时,经过的所有网络设备,每一个网络分层,都需要使用一致的协议
在这里插入图片描述
中间如果经过了一些网络设备,网络分层也要使用对应一致的协议

四、封装和分用

封装: 发送数据时,需要把数据包装成某个协议的格式,再发送

一个网络设备,按从高到低的顺序,使用对应分层的协议来一层一层包装数据

分用: 接受数据时,需要把数据按照某个协议格式来解析,再使用

一个网络设备,按从低到高的数据,按对应分层的协议,来解析使用数据

发送端主机,tomcat发送一个http协议的数据
在发送端主机,需要按网络TCP/IP四层模型,从高到低的顺序,来封装数据
在这里插入图片描述
封装的过程有点类似发快递时,一层一层,从里到外打包
分用的过程,类似接收快递时,从外到里拆包

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:56:47  更:2022-05-05 12:01:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:45:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码