自用笔记之计算机网络

这篇文章主要是自己对计算机网络相关知识点的查缺补漏,权当笔记,逻辑比较混乱。参考自计算机网络一书。

总览

上图是关于计算机网络的分层,由最初的OSI七层模型简化到现在的TCP/IP四层结构。

应用层

应用层主要负责应用进程间通信和交互,常见的应用层协议例如域名系统DNS,HTTP协议,电子邮件协议SMTP,动态主机配置协议DHCP(自动对IP地址等项目进行配置)等,应用层更靠近于用户。

运输层

运输层用来向两台主机中进程之间的通信提供通用的数据传输服务。我们最熟知的TCP与UDP就是运输层协议。关于TCP与UDP可以看这篇文章关于TCP协议的总结

网络层

网络层为分组交换网上的不同主机提供通信服务,网络层使用IP协议。

IP地址:互联网上每台计算机的唯一标识符,每个IP地址都由网络号和主机号两部分组成,理由器仅根据网络号来转发分组,主机号由得到网络号的单位自行分配。使用交换机或网桥连起来的若干局域网仍属于一个网络,因为这些网络具有相同的网络号。同一局域网上的主机或路由器的IP地址中的网络号必须相同。当一台主机同时连接到连个网络时,就必须同时具有两个相应的IP地址,所以路由器最少要具有两个IP地址。MAC地址是数据链路层和物理层使用的地址(实际地址),IP地址是网络层及上层使用的地址(逻辑地址),数据报一旦到达数据链路层,就被封装成MAC帧了,MAC帧在传输时使用的源地址与目的地址都是硬件地址。地址协议ARP能够将IP地址转换为MAC地址。

关于子网:

从IP数据报的首部无法看出主机所连接的网络是否进行了子网划分,使用子网掩码和IP地址进行与运算就可以得到网络地址。所有的网络都必须使用子网掩码,若不划分子网,则会使用默认的子网掩码。

数据链路层

数据链路层的定义是将IP协议封装的IP数据报组装成帧,在两个相邻结点间的链路(物理线路)上传送帧。数据链路层使用的信道在进行通信时主要步骤如下:节点A的数据链路层将网络层交下来的IP数据报添加首部和尾部封装成帧,将帧发送到节点B的数据链路层,若节点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报交给网络层,否则丢弃这个帧。

数据链路层有三个基本问题:封装成帧(在一段数据的前后分别添加首部和尾部)、透明传输(无论什么样的比特数据都能按照原样没有差错的通过数据链路层)、差错检测(传输过程中可能出现差错,主要采用循环冗余检验CRC进行差错检验,原理是在数据后面增加冗余码)。MAC地址:标识计算机唯一性的地址,实际上就是计算机适配器的地址。扩展以太网的俩个方式:使用网桥,网桥对收到的帧根据其MAC帧的目的地址进行转发和过滤;使用交换机(多接口的网桥)。

物理层

物理层不想多说,对于程序员来说简单了解即可,这层关心的是信息在物理实体之间的传输,相关的内容涉及传输介质比如双绞线、光缆,传输方式电磁波、光,传输技术波分复用、码分复用等。这部分更偏重于通信原理,感兴趣的同学可以找通信原理的书籍来看下,这里不多说。

中间设备

路由器:网络层设备,一种专用计算机,实现分组交换的关键构件,其任务是转发收到的分组,路由器收到一个分组,暂时存储一下,检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器直至交付给最终的目的主机。分组在格路由器转发时需要排队,可能会造成一定的时延。分组交换采用存储转发技术

分组交换不需要预先分配带宽,一个分组的长度也远小于整个报文长度,因此时延较小也具有更好灵活性。

计算机性能的几个指标:速率:数据的传输速度,单位是bit/s。带宽:表示网络中某通道传送数据的能力。吞吐量:单位时间内通过某个网络的实际数据量;时延:分为发送时延(主机或路由器发送数据帧所用时间),传播时延,处理时延(主机或路由器处理分组),排队时延(分组在路由器中的排队时长)。时延带宽积:传播时延和带宽相乘;往返时间RTT(双向交互一次所需的时间);信道利用率:信道有百分之几的时间是有数据通过的,并非越高越好,类似高速公路,利用率增大有可能发生阻塞,引起的时延就可能增大

网桥或交换机:属于数据链路层设备

关于加密

对称加密:加密秘钥与解密秘钥使用相同的密码体制

公钥密码体制(也叫非对称加密):使用不同的加密秘钥与解密秘钥,公钥秘钥是公开的,解密秘钥是保密的。

CA证书:假如A想欺骗B,A可以向B发送一份伪造是C发送的报文,A用自己的私钥进行数字签名并附上A自己的公钥,谎称公钥是C的,B如何知道这个公钥不是C的?CA就是将公钥与对应的实体进行绑定的机构

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章