计算机网络概况学习|青训营笔记

37 阅读4分钟

前言: 基本算是0基础来听这节课,之前稍稍的接触过一点此类知识。

1、分析方法:首先介绍了两种学习方法,自底向上,也就是从一个系统的底层的组成元件开始,慢慢向上讲到这个系统的高层,系统的整体,是一个从简单到复杂、将模块逐步拼凑成一个系统的过程;而自顶向下,就是从复杂的系统问题入手,将其一步步拆分为模块问题,相反的是一个从复杂开始逐渐变简单的过程。 这两种方法我也听说过,这次课程用的是第一种方法,也有书籍用的是第二种方法,我认为都有其合理性,两种方法共同使用,可能会达到一个更好的效果。

2、网络基础

①首先是网络的组成部分:分为主机(包括客户端和服务器),路由器和网络协议三部分。

②网络架构(网络的网络):分为区域网络(即本地网络),城域网(数个本地网络节点组成的网络)和广域网(即所有本地网络组合而成的网络)。

③电路交换和分组交换:电路交换是两点之间的点对点交换数据,它在传输期间会一直保持着连接,而且会持续占用电路带宽;分组交换则是将数据分组,分成一个个的小包,这个小包可以间断发送到对方,然后再按顺序组合以便使用,最大的区别是可以动态分配带宽给交换,只有小包需要传输才占用。

④网络分层:即此模型将网络分为五个层,由底向上分别是:物理层,链路层,网络层,传输层,应用层。

⑤协议:定义了在两个或多个通信实体间交换的报文的格式和顺序,以及报文发送和/或接受一条报文或其他事件所采取的动作。白话文就是说定义了规矩,双方都按规矩做。

⑥标头和载荷:标头包含了一些包的元数据,属性和源地址及发送地址。载荷就是实际要传输的数据。

3、Web应用:

①HTTP连接模型;分为三种,Short- lived connections,Persistent connections和HTTP Pipelining。都各有优缺点,发展主要是为了解决队头堵塞(Head of Line Blocking)的问题。

HTTP1存在的问题是无法多路复用。

HTTP2带来的好处有:调整响应传输的优先级,头部压缩以及支持Server Push。但同样会有队头堵塞的问题(在TCP上),原因是丢包后会一直要求重新发送,而不接收后面的包。而且是3RRT启动,速度较慢。

HTTP3加入了QUIC技术,是基于UDP但是是可靠传输的协议。第一次访问需要1RTT,但后续访问均不需要RTT,延迟大大降低(密钥的使用)。

②CDN:内容分发网络,可以将内容分布在多台服务器上,这样凭借着跳转的次数和物理距离为用户自动挑选需要连接获取内容的服务器,速度大大加快。但可能会发生dns劫持现象,原因是cdn服务器域名和原来的域名不一样,需要dns来缓存,但攻击者可以使其变为自己的dns,访问其他网站。其服务策略分为拉策略和推策略。

③WebSocket:在HTTP协议之上的新协议。优点有:有状态的持久连接,服务端可以主动推送消息,和发消息延迟比HTTP低。

4、网络安全

①分为三要素:机密性,完整性和身份验证。

②解决方法有对称加密和非对称加密。 其中用到了密码散列函数,即哈希函数。 在公开的即不安全的信道上传输秘密信息,就需要完整性和身份验证。主要涉及到证书的内容。

③HTTPS HTTPS= HTTP +TLS TLS=身份验证+加解密。 服务端身份验证靠PKI(分发证书、验证证书的基础设施)。客户端身份验证靠HTTP协议。

总结:这只是一节很浅的计算机网络扫盲课,不怎么深入,但介绍了大致框架,如果感兴趣,可以借助其他教材和资料深入学习。