初识计算机网络
- 了解计算机网络怎样构成
- 了解网络是怎样连接的
- 网络安全是怎样维护的
计算机网络概念
计算机网络是指在网络操作系统、网络管理软件和网络通信协议的管理和协调下,通过通信线路将多台具有独立功能的计算机及其位于不同地理位置的外部设备连接起来,实现资源共享和信息传输的计算机系统。
计算机网络基础
网络组成部分
- 主机:客户端和服务端
- 路由器
- 网络协议
网络结构
- 网络中的网络
信息交换方式
- 电路交换
- 分组交换
网络分层
- 网络层
这层对端到端的包传输进行定义,它定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。示例:IP等。
- 传输层
这层的功能包括是选择差错恢复协议还是无差错恢复协议,及在同一主机上对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。示例:TCP,UDP,SPX。
- 应用层
与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。例如,一个没有通信功能的自处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。但是,如果添加了一个传输文件的选项,那么字处理器的程序就需要实现OSI的第7层。示例:TELNET,HTTP,FTP,NFS,SMTP等。
Web中的网络
HTTP
示例:
CDN:DNS劫持
- 域名解析一般由网站自己处理
- 要加速的域名则重定向到CDN厂商的域名解析服务处理
- CDN厂商根据来源确定最近的CDN服务器的IP
- 用户直接访问最近的CDN服务器
Websocket
- 有状态的持久链接
- 服务端可以推送消息
- 用Websocket发送消息延迟比HTTP低
网络安全
网络安全三要素
- 机密性:攻击者无法获知通信内容
- 完整性:攻击者对内容进行篡改时能被发现
- 身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信
证书链
非对称加密和对称加密
- 对称加密:加密、解密使用同样的秘钥
- 非对称加密:加密、解密使用不同的秘钥(公钥和私钥),而且公钥加密只能用私钥解密、私钥加密只能用公钥解密。
密码散列函数
- 密码散列函数性质:找到两个不同的输入使之经过密码散列函数后有相同的哈希值,在计算上是不可能的。
如何实现完整性
- 有明文m,密码散列函数H
- 计算H(m)获得哈希值h
- 将m和h组成新信息m+h
- 接收方拆分m+h,重新计算H(m)得h',对比h'和h