--- title: 计算机网络概述 mathjax: true date: 2019-06-25 20:28:43 tags: [计算机网络] --- 之前看韩利辉计网视频的笔记。 # 网络 ## 局域网 覆盖范围小 自己花钱买设备 带宽固定 自己维护 比如学院的局域网: 机房的汇聚层交换机连接各教室的交换机,教室的接入层交换机连接各电脑。 两两之间的网线不超过100米,10M 100M 1000M 接入层交换机带宽为百兆,每个口都是百兆。汇聚层交换机带宽要比接入层交换机大。 规范的局域网应该是分层的 ## 广域网 超过100米,比如电话线拨号上网,带宽不固定,花钱买带宽、维护等服务 ## Internet 由众多ISP组成,ISP是Internet Service Provider,因特网服务提供商。 各提供商都有自己的机房,对网民提供Internet连接。 各提供商之间最多有一根线相连,所以我用移动的网访问电信的服务器可能会很慢。 有的网站会在各运营商的机房都买一个服务器,或者双线机房(机房里有两种运营商)。 # IP和MAC 计算机有一个IP地址。 网段。 子网掩码,告诉计算机哪儿是网络部分,哪儿是主机部分。 路由器作用:负责在不同网段转发数据 路由器的端口也有MAC地址 路由器的端口相当于计算机的一个网卡,也有地址 网关:告诉计算机去哪个网段,==指向路由器==。 网卡:MAC地址(物理地址,唯一),出厂已经固定在网卡里,48位二进制。 MAC和IP分别是物理和逻辑上的概念 计算机上发数据包给DNS服务器(计算机配的有),DNS将域名解析成IP,返给计算机 # 数据包 数据、源IP、目标IP 就像一封信 计算机数据包最大1500字节。 数据一次传不完的话,数据帧是有编号的。 # 数据帧 数据包加上源MAC、目标MAC,就是数据帧。 想把数据包传给目标IP,需要路由器,用MAC找到路由器。 然后路由器根据目标IP更新源MAC和目标MAC,最短路径。 数据帧传给交换机,交换机传给路由器,路由器给路由器,最后给交换机,交换机给计算机。 客户机:给我数据 服务器:好的,给你 客户机:已接收,给我下一个数据 服务器:好的,给你 服务器不知道客户机的MAC地址,可以知道客户机的IP。 为什么不能只用MAC标识电脑? 如果全球计算机都是用交换机连接的,不需要路由器,就可以只用MAC标识电脑。但这不可能。 网卡有缓存,发送缓存,接收缓存。 # OSI参考模型 7层,国际标准化组织分析计算机通讯得出的。 好处: 不同厂商生产设备可以一起用 各层较为独立,每一个模块有变化,不会影响另一个模块。这并不代表各层之间没有关系。 k层为k+1层提供服务。 分层的思想是使用网络的指导原则。 ## 应用层 所有能产生网络流量的程序,记事本就不是,QQ就是。 ## 表示层 在传输之前进行的东西。 比如在切割成数据包传输之前是否进行压缩、加密处理、编码 ## 会话层 session,规定哪个服务器和客户机哪个窗口交互。 cmd中输入`netstat -n` 可以查看会话。 只要和其他计算机有数据传输,就会建立会话。我们就可以查到它。 通过查看会话 可以查木马。木马和病毒不一样。 输入`netstat -nb`可以会话是谁建立的。 ## 传输层 实现可靠传输、流量控制、不可靠传输。 可靠传输:超时重传 流量控制:客户机给服务器一个数据包说慢点 不可靠传输:比如向DNS通过域名查IP,双方一个数据包就可以解决问题,这种通讯不需要建立会话,不需要给数据包编号。就不用超时重传,再来一次就好了。 ## 网络层 选择最佳路径、规划IP地址。 人工指定路径:通过静态路由 ## 数据链路层 定义帧的开始和结束、透明传输、差错校验。 用特殊位表示开始和结束,看到开始标志就接收 看到结束标志就结束 启动密码子 终止密码子 透明传输:一部分数据和结束位一样,会在数据那里插入一个特殊的位,表明这不是真正的结束。接收端接收以后再把插入的位去掉。 差错检验:查出错误,但不会纠正错误,纠正是传输层做的 ## 物理层 定义网络设备接口标准、电气标准、如何在物理链路上传输得更快 接口标准:不同公司生产的网线、网卡都能使用 电气标准:比如用几伏电压代表1。 # OSI和网络排错 应该从最底层开始查找。 ## 物理层 查看连接状态、查看发送和接受到的数据包大小。 ## 数据链路层 MAC地址冲突、ADSL欠费、网速没办法协商、计算机连接到错误的VLAN ## 网络层 配置了错误的IP地址、子网掩码、网关 路由器上没有到达目标网络的路由 ## 应用层 应用层在这儿指网络层之上的 应用程序配置错误 # OSI和网络安全 ## 物理层 交换机不用的口 把网线拔掉 ## 数据链路层 ADSL账号密码、无线AP、VLAN、交换机端口绑定MAC地址 ## 网络层 在路由器上使用ACL控制数据包流量、Windows高级防火墙 ## 应用层 应用层在这儿指网络层之上的。 开发的应用程序没漏洞 SQL注入 # OSI和TCP/IP协议 --- 作者:[@臭咸鱼](https://github.com/chouxianyu) 转载请注明出处: 欢迎讨论和交流! ---