计算机网络基础知识 | 青训营笔记

147 阅读7分钟

1、分析方法

一般而言分析方法可以分为以下两种

  1. 自定向下

从应用层开始向下逐层分析网络, 直到物理层. 该方法侧重于理解应用程序如何使用网络, 并强调网络服务和用户需求. 自顶向下的分析方法通常用于网络设计和性能评估, 以确保网络能够满足应用程序的需求.

  1. 自低向上

从应用层开始向下逐层分析网络, 直到物理层. 该方法侧重于理解应用程序如何使用网络, 并强调网络服务和用户需求. 自顶向下的分析方法通常用于网络设计和性能评估, 以确保网络能够满足应用程序的需求.

两种分析方法是不同的网络分析方法, 用于理解和解决网络问题. 但是都很重要.

我们碰到任何问题的时候,都可以使用这两种分析方法帮助我们解决问题.

2、网络组成部分

主机, 路由器, 交换机等组成.

3、网络结构

网络的网络.众多网络互相连接而成的分布式网络结构.

4、信息交换方式

  1. 电路交换:电路交换是一种建立在物理连接上的传输方式.在电路交换中,发送方和接收方通过建立一条物理连接,将数据直接传输到接收方,类似于电话通信.在建立连接期间,网络资源(如带宽、线路等)被独占,直到连接被释放.电路交换适用于传输大量数据时,传输质量稳定,但连接建立时间长,资源利用率低.
  2. 报文交换:报文交换是一种通过传输数据报文的方式进行信息交换的方式.发送方将数据拆分为若干个数据报文,每个数据报文附带目标地址和源地址,然后在网络中依次传输.当数据报文到达目的地时,它们被重新组合成原始数据.报文交换适用于数据传输频繁,连接时间较短的场景,但存在传输延迟和网络拥塞的问题.
  3. 分组交换:分组交换是一种将数据拆分为若干个数据包进行传输的方式.发送方将数据分成固定大小的数据包,每个数据包都包含目标地址和源地址,并在网络中依次传输.当数据包到达目的地时,它们被重新组合成原始数据.分组交换适用于传输小数据量,网络资源利用率高,但存在传输延迟和数据包丢失的问题.

5、网络分层:

  • 教学使用的网络分层: 物理层、数据链路层、网络层、运输层和应用层.
  • TCP/IP协议栈: 网络接口层、网际层、运输层和应用层.
  • OSI体系结构: 物理层、数据链路层、网络层、运输层和应用层.

6、协议和服务

6.1、协议

协议: 控制两个对等实体进行逻辑通信的规则的集合.

协议三要素: 语法, 语义, 同步

简单来说, 协议是指在计算机网络中, 不同设备之间进行通信所需遵循的规则和标准. 它定义了两个或多个通信实体之间交换的报文格式顺序, 以及报文发送和/或接受一条保温或其他事件所采取的动作.

但是, 协议的运作通常依赖于网络连接的存在.

  • 什么叫做协议的运作通常依赖于网络连接的存在?

网络连接: 两台计算机之间建立的逻辑或物理通道, 可以使它们进行数据的交换和通信.

协议需要通过网络连接来传输数据和信息, 因此协议的存在必须依赖于连接的建立和维护. 如果没有连接, 协议就无法发挥作用.

其实我们可以简单的把协议理解为一种语言, 只有两个实体使用互相之间可以理解的语言的时候, 实体之间才可以进行交流.

image-20230413111630848.png

6.2、服务

服务: 在协议的控制下, 两个对等实体的逻辑通信使得本层能够向上层提供服务

  • 同时要实现本层的协议还需要使用下一层提供的服务.
  • 协议是水平的,服务是垂直的.
  • 实体看得见相邻下层所提供的服务, 但不知道实现该服务的具体协议, 也就是说, 下面的协议对上面的实体是透明的.

7、TCP和QUIC

TCP(Transmission Control Protocol)和QUIC(Quick UDP Internet Connections)是两种不同的传输协议,下面是它们的主要对比:

  1. 连接方式:TCP是基于面向连接的方式,而QUIC是基于无连接的方式.在TCP中,连接的建立和维护需要进行“三次握手”也就是说需要3RTT,而在QUIC中,第一次的访问需要仅仅只需要1RTT,第二次访问则直接0RTT,这种连接速度是比TCP更快速的.

image-20230413114127422.png

image-20230413114234089.png 2. 多路复用:TCP中存在一个问题,就是同一时间只能进行一个数据流的传输,如果需要同时传输多个数据流,需要建立多个TCP连接,这就会浪费资源.而QUIC支持多路复用,可以在单个连接中传输多个数据流,提高资源利用率. 0. 拥塞控制:TCP使用的是慢启动、拥塞避免和拥塞恢复等拥塞控制机制,而QUIC使用自己的拥塞控制算法,能够在网络拥塞的情况下自动调节数据发送速率,保持较高的吞吐量. 0. 安全性:TCP在数据传输时没有内置的加密机制,而QUIC内置了加密和身份验证机制,可以有效地防止流量劫持、数据泄露等安全问题.

8、CDN

CDN加速: 通过部署在全球不同地理位置的服务器,将网站或移动应用的静态内容(如图片、CSS、JavaScript等)缓存到离用户最近的服务器上,从而提高访问速度和用户体验.

作用: 当用户请求访问某个网站或应用时,CDN会自动将静态资源从最近的服务器缓存中提供给用户,减少了资源请求的跨地域传输,从而减少了延迟和带宽占用.同时,CDN还可以进行负载均衡和智能路由,以确保请求都能够被最快速地响应,提高了网站的可用性和稳定性.

9、WebSocket

WebSocket: 一种在单个TCP连接上进行全双工通信的协议,它允许客户端和服务器之间进行实时的、双向的数据传输.

websocket协议通过在客户端和服务器之间建立一条长连接来实现双向通信.在连接建立后,客户端和服务器都可以随时向对方发送数据,而不必等待对方请求.由于WebSocket协议的双向通信特性,它适用于需要实时传输数据的场景,例如在线聊天、多人游戏、实时监控等.

特点:

  • 有状态的持久连接
  • 服务端可以主动推送消息
  • 用WebSocket发送消息延迟比HTTP低
  • WebSocket协议是一种标准协议,可以在所有现代浏览器和服务器上使用.

10、网络安全

还没整理出来,哈~