计算机网络基础学习指南

           

 


前言

计算机网络基础是研发/运维工程师都需掌握的知识,但往往会被忽略。

今天,我将对计算机网络基础学习进行详细阐述,涵盖 TCP / UDP协议、Http协议、Socket等,希望你们会喜欢。

1、计算机网络体系结构

1.1 简介

定义

计算机网络的各层 + 其协议的集合。

作用

定义该计算机网络的所能完成的功能。

1.2 结构介绍

计算机网络体系结构分为3种:OSI体系结构、TCP / IP体系结构、五层体系结构。

OSI 体系结构:概念清楚 & 理念完整,但复杂 & 不实用;

TCP / IP 体系结构:含了一系列构成互联网基础的网络协议,是Internet的核心协议 & 被广泛应用于局域网和广域网;

五层体系结构:融合了OSI 与 TCP / IP的体系结构,目的是为了学习 & 讲解计算机原理。

 低三层为通信子网,负责数据传输;

高三层为资源子网,相当于计算机系统,完成数据处理;

传输层承上启下。

TCP / IP的体系结构详细介绍

由于 TCP / IP体系结构较为广泛,故主要讲解。

 

 OSI的体系结构详细介绍

 

 

2TCP协议

Transmission Control Protocol,即传输控制协议

属于传输层通信协议

基于TCP的应用层协议有HTTP、SMTP、FTP、Telnet 和 POP3。

3UDP协议

3.1 定义

User Datagram Protocol,即用户数据报协议

属于传输层通信协议

基于UDP的应用层协议有 TFTP、SNMP 与 DNS

3.2 特点

无连接的、不可靠的、面向报文、无拥塞控制,具体介绍如下:

 

3.3 优缺点

优点:速度快

缺点:消息易丢失(特别是 网络较差时)

3.4 应用场景(对应应用层协议)

要求通信速度高

如:

域名转换:DNS协议

文件传输:FTP协议

网络管理:SNMP协议

远程文件服务器:NFS协议

3.5 报文段格式

UDP的报文段共有2个字段:数据字段 & 首部字段

下面主要介绍首部(8字节、4个字段)

 

 

3.6 TCPUDP协议的区别

 

4HTTP协议

简介

 

5Socket

5.1 简介

即套接字,是应用层 与 TCP/IP 协议族通信的中间软件抽象层,表现为一个封装了 TCP / IP协议族 的编程接口(API)

 

Socket不是一种协议,而是一个编程调用接口(API),属于传输层(主要解决数据如何在网络中传输)

即:通过Socket,我们才能在Andorid平台上通过 TCP/IP协议进行开发

对用户来说,只需调用Socket去组织数据,以符合指定的协议,即可通信。

成对出现,一对套接字:

Socket ={(IP地址1:PORT端口号)(IP地址2:PORT端口号)}

一个 Socket 实例 唯一代表一个主机上的一个应用程序的通信链路

6、其他知识

6.1 在浏览器中输入url地址 ->> 显示主页的过程

打开一个网页,整个过程会使用哪些协议

 

6.2 IP地址(IPv4地址)

定义

连接在Internet中的每一台主机(或 路由器)的全球唯一的标识符

组成

IP地址 = 32位 = 网络号 + 主机号;即IP地址::={<网络号>,<主机号>}

其中:

网络号:标志主机(或路由器)所连接到的网络。一个网络号在整个因特网范围内必须是唯一的。

主机号:标志该主机(或路由器)。一个主机号在它面前的网络号所指明的网络范围必须是唯一的。

不同类型的IP地址,其主机号 & 网络号所占字节数不同;故:一个IP地址在整个网络范围内是唯一的。

分类

传统的IP地址是分类的地址,分为A,B,C,D,E五类

区别在于网络号 & 主机号占的字节数不同

 特别注意:在各类IP地址中,有一些IP地址用于特殊用途,不能用于做主机IP地址

 

6.3 ICMP协议

定义

Internet Control Message Protocol,即 网际控制报文协议

属于IP层协议

注:ICMP报文不是高层协议,而是作为IP层数据报的数据,加上数据报首部,组成IP数据报发出去

作用

更有效地转发IP数据包 & 提高交付成功的机会

同时允许主机 / 路由器报告差错 & 异常情况

分类

ICMP差错报告报文 & ICMP询问报文

主要应用

PING(分组网间探测)、Traceroute(跟踪1个分组从源点到终点的路径,原理 = 从源主机向目的主机发送一连串的IP数据报)

下面,将主要介绍Ping的过程。

6.4 Ping的过程

定义

Packet InterNet Groper,即分组网间探测

ICMP报文的1个重要应用:使用了IPCM回送请求 & 回送回答报文

是应用层直接使用网络层ICMP1个例子,无经过传输层的TCPUDP

作用

测试2个主机的连通性

原理

向目的主机发送多个ICMP回送请求报文

根据 目的主机返回的ICMP回送回答报文中的时间戳,从而计算出往返时间

最终显示的结果:发送到目的主机的IP地址、发送 & 收到 & 丢失的分组数、往返时间的最小、最大 & 平均值

过程

假设有两台主机:

(目的主机)PC1IP = 192.168.1.1

(源主机)PC2IP = 192.168.1.2

 

6.5 路由器与交换机的区别

 

6.6 Cookie Session

简介

 

区别 & 对比

 

6.7 Cookie 与 Token

简介

 基于Cookie的身份验证 & 验证流程

 

 基于Token的身份验证 & 验证流程

 

 

---END---

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据库的事务处理

文章目录 前言一、事务的概念二、事务的特性三、隔离级别四、并发控制五、总结 前言 在现代信息化时代&#xff0c;大量的数据不断地被创建、修改、删除和查询。 为了保证数据的准确性和一致性&#xff0c;数据库的事务处理成为了必不可少的一个重要组成部分。 本文将针对数据…

nginx学习使用

一、Nginx是什么&#xff1f; Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器&#xff0c;同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔赛索耶夫为俄罗斯访问量第二的Rambler.ru站点&#xff08;俄文&#xff1a;Рамблер&#xff09;开发的&#xff0c;第…

线性代数:线性方程求解、矩阵的逆、线性组合、线性独立

本文参考www.deeplearningbook.org一书第二章2.3 Identity and Inverse Matrices 2.4 Linear Dependence and Span 本文围绕线性方程求解依次介绍矩阵的逆、线性组合、线性独立等线性代数的基础知识点。 一、线性方程 本文主要围绕求解线性方程展开&#xff0c;我们先把线性…

软件工程——第2章可行性研究知识点整理

本专栏是博主个人笔记&#xff0c;主要目的是利用碎片化的时间来记忆软工知识点&#xff0c;特此声明&#xff01; 文章目录 1.可行性研究的目的&#xff1f; 2.可行性研究的实质&#xff1f; 3.从哪些方面研究逻辑模型的解法可行性&#xff1f; 4.可行性研究最根本的任务是…

【MySQL】数据库基础 ②

✍LIKE 子句 说明&#xff1a; 使用 SELECT 来查询数据&#xff0c; 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。 WHERE 子句中可以使用等号 来设定获取数据的条件&#xff0c;如 "字段(text_title) 值()"。 但是有时候我们需要获取 text_…

Dump寄存器使用、解析

前人种树&#xff0c;后人乘凉&#xff1b;创造不易&#xff0c;请勿迁移~ author daisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主 daisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主daisy.skye擅长嵌入式,Qt,Linux,等方面的知识https://blog.csdn.net/qq_40715266?t…

Ubuntu18.04离线安装Nginx

因需要安装nginx的服务器无法连接互联网&#xff0c;所以需要离线安装。首先需要下载nginx的安装包&#xff0c;之后进行安装&#xff0c;在安装之前需要保证gcc&#xff0c;g&#xff0c;make等依赖包已经安装。 因为是需要离线安装&#xff0c;所以在之前是用的一台互联网下载…

selenium 要点击的元素被其他元素遮挡 or 无法找到非可视范围内的元素

selenium 无法找到非可视范围内的元素 org.openqa.selenium.StaleElementReferenceException: The element reference of is stale; either the element is no longer attached to the DOM, it is not in the current frame context, or the document has been refreshed se…

Java实训日志06

文章目录 八、项目开发实现步骤&#xff08;八&#xff09;创建服务接口1、创建学校服务接口2、创建状态服务接口3、创建学生服务接口4、创建用户服务接口 &#xff08;九&#xff09;创建服务接口实现类1、创建学校服务接口实现类2、创建状态服务接口实现类3、创建学生服务接口…

【C++】4.工具:读取ini配置信息

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍读取ini配置信息。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&…

百度沈抖:大模型 产业智能化时代的新引擎

6月9日&#xff0c;2023 NAVIGATE领航者峰会在杭州举办&#xff0c;聚焦数字经济新政策、新技术、新业态带来的蓬勃机遇&#xff0c;探讨ICT行业在AIGC时代将要面临的全新挑战与应对策略。百度集团执行副总裁、百度智能云事业群总裁沈抖出席大会并作题为《大模型 产业智能化时代…

Elastic 8.8 版引入了全新的 Learned Sparse Encoder 模型,并宣布正式推出合成监测

作者&#xff1a;Brian Bergholm 2023年5月25日 今天&#xff0c;我们非常高兴地宣布 Elastic 8.8 版正式发布。 新增功能 Elastic 企业搜索可帮助开发人员利用 Elasticsearch 实现强大的现代搜索和发现体验。 请在 “Elastic 企业搜索亮点” 博文或 8.8 版发行说明中&#…

信息量、熵、联合熵、条件熵、相对熵、交叉熵、JS散度、Wasserstein距离

信息量 I ( x i ) l o g 1 P ( x i ) − l o g P ( x i ) I(x_i)log \frac {1}{P(x_i)}-logP(x_i) I(xi​)logP(xi​)1​−logP(xi​) 信息量&#xff08;self-information&#xff09;&#xff0c;又译为信息本体&#xff0c;由克劳德 香农&#xff08;Claude Shannon&…

小白也能玩转Docker:应用部署、迁移与备份

目录 1、应用部署 1.1、Mysql 1.2、Ngixn 1.3、Redis 1.4、RabbitMQ 1.5、Elasticsearch 1.6、Zookeeper 2、迁移与备份 2.1容器保存为镜像 2.2镜像备份 2.3镜像恢复与迁移 1、应用部署 1.1、Mysql 拉取mysql的镜像&#xff1a; docker pull mysql:5.7 为mysql镜…

孤立森林详解

基本概念 孤立森林&#xff08;Isolation Forest&#xff09;是一种基于异常检测的机器学习算法&#xff0c;用于识别数据集中的异常点。孤立森林算法在异常检测、网络入侵检测、金融欺诈检测等领域有广泛应用&#xff0c;并且在处理大规模数据和高维数据时表现出色。孤立森林…

linux centos Python + Selenium+Chrome自动化测试环境搭建?

在 CentOS 系统上搭建 Python Selenium Chrome 自动化测试环境&#xff0c;需要执行以下步骤&#xff1a; 1、安装 Python CentOS 7 自带的 Python 版本较老&#xff0c;建议使用 EPEL 库或源码安装 Python 3。例如&#xff0c;使用 EPEL 库安装 Python 3&#xff1a; sud…

excel爬虫相关学习2:excel 和 vba 爬虫相关xmlhttp方法

目录 前言&#xff1a;vba 爬虫相关xmlhttp的方法 1 什么是xmlhttp 1.1 定义 1.2 特点 定义XMLHTTP对象&#xff1a; XMLHTTP方法&#xff1a; open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword) send(varBody) setRequestHeader(bstrHeader, bstrValue) …

SpringBoot全局异常页面处理学习

首先我们先在控制器中写一个异常&#xff0c;默认情况下我们的SpringBoot异常页面是这个样子的。 示例代码如下: import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController;/*** author qinxun* date 202…

拉新、转化、留存,一个做不好,就可能会噶?

用户周期 对于我们各个平台来说&#xff08;CSDN也是&#xff09;&#xff0c;我们用户都会有一个生命周期&#xff1a;引入期–成长期–成熟期–休眠期–流失期。 而一般获客就在引入期&#xff0c;在这个时候我们会通过推广的手段进行拉新&#xff1b;升值期则发生在成长期…

AotucCrawler 快速爬取图片

AotucCrawler 快速爬取图片 今天介绍一款自动化爬取图片项目。 GitHub: GitHub - YoongiKim/AutoCrawler: Google, Naver multiprocess image web crawler (Selenium) Google, Naver multiprocess image web crawler (Selenium) 关键字 爬虫网站&#xff1a;Google、Naver &…