1.计算机网络概述
1.1.计算机网络的组成
1.组成部分:硬件、软件、协议
2.工作方式:
A.边缘部分:用户直接使用(主机)。方式:C/S,P2P
B.核心部分:为边缘部分服务(网络、路由器)
3.功能组成
A.通信子网:实现数据通信,即把信息从一个主机传到另一个主机(网络层、数据链路层和物理层)
B.资源子网:实现资源共享 / 数据处理,提供各种网络资源(硬件、软件和数据信息)的集合(应用层、表示层和会话层)
传输层弥补上三层和下三层之间的差距,并为上三层屏蔽下三层的实现细节
1.2.计算机网络的分类
广域网:使用交换技术,范围较大
局域网:使用广播技术,范围较小
区分两者不能仅看距离,而应看其使用的技术
1.3.计算机网络性能指标
表示存储量的时候是以2为底,例:1KB = 2 ^ 10B;1MB = 2 ^ 10KB
表示速率的时候是以10为底,例:1kb/s = 10 ^ 3b/s;1Mb = 10 ^ 3kb/s
1.速率:每秒数据的传输量,例:传输0101010101使用1s,则速率为10b/s
2.带宽:网络设备所支持的最高速率,单位是b/s(理想状态)
3.吞吐量:单位时间内通过的数据量,单位是b/s
4.时延:数据从发送端到接收端所需要的时间,由四个部分相加而成
①发送时延(主机内):从发送分组的第一个比特开始算起,到发送完该分组的最后一个比特。发送时延 = 分组长度 / 信道宽度(发送速率)(高速链路中,仅仅是提高了发送速率,从而降低了发送时延,但是传播时延并未受到影响)
②传播时延(信道内):电磁波从信道上的发送端到接收端的时间。传播时延 = 信道长度 / 电磁波在信道上的传播速率(数据被转换为电磁波的形式在信道上传播)(受到传输介质影响)
③排队时延(路由器内):在输入队列中排队等待处理的时间
④处理时延(路由器内):检错 / 找出口
其中,排队时延和处理时延基本忽略不计
5.时延带宽积:传播时延 * 带宽。发送端第一个比特到达终点的时候,发送端共发送了多少比特(链路中有多少比特)(链路容量)
6.往返时延RTT:从发送方发送数据开始,到发送方收到接收方确认总共经历的时延
RTT包括往返传播时延(数据A从发送端到接收端的传播时延 + 接收端发送给发送端的确认B)+ 末端处理时间(通常忽略不计)(不包括发送时延)
7.信道利用率:有数据通过的时间 / 有数据通过的时间 + 无数据通过的时间
2.计算机网络体系结构与参考模型
2.1.计算机网络的分层结构
2.1.1.分层的基本原则
1.每层都实现一种相对独立的功能
2.保持下层对上层的独立性,上层单向使用下层提供的服务
2.1.2.分层结构的概念
1.协议:为网络中对等实体数据交换的实现而建立的规则或协定。包含:
语法:规定传输数据的格式
语义:规定所要完成的功能
同步:规定各种操作的顺序
2.接口:上层使用下层服务的接口(仅在相邻层有接口,该层如何实现其所提供的服务对上一层透明)
3.服务:下层为相邻上层提供的功能调用(中间层次为上一层提供服务,还包含下一层包括底下所有层次的服务的总和(该层自己也能使用))
4.SDU服务数据单元:该层所要传输的有用的数据
5.PCI协议控制信息:控制信息
6.PDU协议数据单元:对等层次传输的数据单位
每一层的PDU作为下一层的SDU,加上该层的PCI得到这一层的PDU
2.2.OSI模型
每层收到上层的数据时,需要添加该层的控制信息(物理层除外,数据链路层额外需要加一个尾部)
物理层、数据链路层、网络层为点对点(不管是发送端主机、接收端主机和中间路由器都需要使用这三个层次)
传输层、会话层、表示层、应用层为端对端(只有发送端主机和接收端主机需要使用这四个层次,中间路由器不需要)
2.2.1.应用层
所有能和用户交互并且产生网络流量的程序(QQ)
2.2.2.表示层
用于处理两个通信系统中交换信息的表示方式(语法和语义)
1.数据格式变换:翻译(例:二进制转换成图片)
2.数据加密解密
3.数据压缩和恢复
2.2.3.会话层
向用户进程提供建立连接并且在该连接上有序的传输数据
1.建立、管理、终止会话
2.在通信失效时恢复通信,实现数据同步
2.2.4.传输层
负责主机中两个进程的通信。传输单位是报文段或者用户数据报
1.可靠传输(基于接收端确认机制)、不可靠传输(不需要确认)
2.差错控制(纠正传输中产生的错误)
3.流量控制(控制发送端发送速率)
4.复用分用(复用:多个进程可以同时使用传输层的服务;分用:传输层把收到的数据分别交付给相应近程)
2.2.5.网络层
把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务(实现不同主机互联)。网络层传输单位是数据报
1.路由选择(选择合适路由,最佳路径)
2.流量控制(控制发送端速率)
3.差错控制(能纠错纠错,不能纠错丢弃)
4.拥塞控制(流量控制针对的是发送端,拥塞控制针对的是全局)
2.2.6.数据链路层
把网络层传下来的数据报组装成帧,传输单位是帧
1.成帧(定义帧的开始和结束)
2.差错控制 帧错、位错(可以检错可以纠错)
3.流量控制
4.访问控制(控制对信道的访问)
2.2.7.物理层
在介质上实现透明传输(不管传输的内容是什么,直接传输),传输单位是比特
1.定义传输模式(单工、半双工、双工)
2.定义传输速率
3.比特同步(准确无误的接收)
4.比特编码(区分0、1,例如:曼彻斯特编码,归零编码)
2.3.TCP / IP
与OSI模型相同点:
1.都分层(将庞大的问题拆分成一个个小问题,每层独立处理)
2.基于独立的协议栈
3.可以实现异构网络互联
不同点:
1.OSI定义三点:服务、协议、接口
2.TCP / IP 中IP作为重要层次
3.面向连接:建立连接→开始传输→释放连接
无连接:直接传输
网络层(IP协议面向无连接):OSI为无连接+面向连接;TCP/IP为无连接
传输层(端到端,可靠传输):OSI为面向连接;TCP/IP为无连接+面向连接
2.4.五层参考模型
应用层:支持各种网络应用
传输层:进程间的数据传输
网络层:源主机到目的主机的数据分组路由与转发
数据链路层:网络层传下来的数据组装成帧
物理层:比特传输