一、概述
1.发展历史
不同网络由路由器连接起来即为互联网,因特网即是最大的互联网
1969arpanet,1983,TCP/IP成为ARPANET的标准协议,也就是因特网的诞生时间,1985NSFNET,1990ARPANET关闭,91年因特网开始商业化收费,1993NSFNET被替代转而由各种ISP运营,1994WWW技术。
ISP(Internet Service Provider)因特网服务提供者,因特网已经发展成基于ISP的多层次结构的互联网络
因特网标准化面向公众,会以RFC向公众发表
因特网由核心部分和边缘部分组成,边缘部分通常由大量终端构成,而核心部分由异构型网络和大量连接这些异构网络的路由器构成
2.交换方式
a.电路交换
电路交换分为建立连接,通话,释放连接三个步骤。在通话过程中通信资源一直会被占用,若没有信息那么资源就被浪费了。
b.分组交换
分组交换网中间存在多个路由器作为交换节点,主机通过交换节点发送报文进行通信。但是如果一次传输完整报文对交换节点的设备性能提出了很高要求,因此对报文进行分段然后添加首部信息,里面包含目标地址等信息。目的地收到分组后的报文后根据首部信息还原出完整的报文信息。
在分组交换中,存储转发将会占据每一阶段中间链路,而不会像电路交换一样一直占用整条需要通信的链路,这样就提高了效率。其中发送方负责构造分组发送分组,而交换节点负责缓存分组、转发分组,接收方负责接受分组并还原报文。
分组交换的优点:
没有建立连接和释放连接的过程
分组传输过程中逐段占用通信链路,有较高的通信线路利用率
交换节点可以为每一个分组堵路选择转发路由,使网络有较好的生存性
缺点:
分组首部带来了额外的传输开销
交换节点存储转发分组会造成一定的时延
无法确定通信时端到端通信资源全部可用,在通信量较大时可能造成网络阻塞
c.报文交换
报文交换是分组交换的前身,报文交换中报文被整个的发送,交换节点将报文整体接收完成后才能查找转发表,将整个报文转发到下一个节点。
因此报文交换相比分组交换延时更长,缓存需求更高。
d.三种交换对比
若要连续传输大量的数据,并且数据传送时间远大于建立连接的时间,则使用电路交换有较高的传输效率,然而计算机的数据传输往往是突发式的,采用电路交换时线路的利用率会很低。
报文交换和分组交换都不需要建立连接即预先分配通信资源,在传送计算机的突发数据时可以提高通信线路的利用率。
将报文构造成若干个更小的分组进行分组交换,比将整个报文进行报文交换得到时延要小,并且可以避免太长的报文长时间占用链路,有利于差错控制,同时具有更好的灵活性。
3.计算机网络定义
最简单定义:计算机网络是一些互联的、自治的计算机集合。
现阶段定义:计算机网络主要是由一些通用的可编程的硬件互联而成的,而这些硬件并非专门用来实现某一特定目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
其中,可编程硬件意味着一定包含有中央处理单元,例如智能手机、具有网络功能的传感器等。
各类应用意味着计算机网络并非只用来传送数据,而是能够基于数据传送从而实现各种各样的应用。
4.计算机网络分类
a.交换方式
电路、报文、分组
b.使用者
公用网、专用网
c.传输介质
有线网络、无线网络
d.覆盖范围
广域网WAN、城域网MAN、局域网LAN、个域网PAN
分别对应几十至几千公里、5到50公里、1公里左右、10米
e.拓扑结构
总线型、星型、环型、网状型
5.计算机网络性能指标
速率:bit,b,kb,mb,gb,tb,注意计算机网络这些相关单位的换算关系(存储相关是2的10次方间进,速率上是10的3次方渐进),估算时可以简单约掉1.
带宽:某个信号所包含的各种不同速率成分所占据的频率范围,这是带宽在模拟信号系统中的意义。带宽在计算机网络中的意义,也就是用来表示网络的通信线路所能传送数据的能力,即在单位时间内从网络中的某一点到另一点所能通过的最高数据率。
吞吐量:是指单位时间内通过某个网络或者接口的实际数据量。吞吐量受到网络带宽的限制。
时延:数据从网络的一端传输到另外一端所需要的时间,数据可能是一个分组或者是一个字节。最简单的传输模型下,也就是发送端、信道、接收端这种情况,可存在发送端的发送时延、传输时延,还存在排队时延,处理时延。其中发送时延一般定义为分组长度/发送速率。传播时延=信道长度/信号传播速率。这里一般不包括接收时延,实际上信号在第一个分组后主机在传播的同时也在接收,这样的时延实际上就是由传播时延一种情况就能概括。
PS:光纤中传播的速率快并不是光在光纤中以光速传播所以快,甚至速率要略低于电磁波在铜线中的传播速率,都为亚光速。传播速率快主要是因为带宽大。
在计算题当中发送到接收完的最小的时长,需要的最小时长一般为所有分组的发送时延+单个发送时延 x 2
求发送时延的时候mb和mb/s的关系不能直接相除,光纤的传播速率一般默认为2x108 m/s
时延带宽积:传播时延和带宽的乘积,以比特为单位的链路长度。
往返时间:从发送端发送数据分组开始,到发送端收到接收端发来的相应确认分组为止总共耗费的时间。
利用率:分为链路利用率和网络利用率。其中链路利用率是指某条链路有百分之几的时间是被利用的,完全空闲的链路利用率为0。网络利用率是指网络中所有链路的链路利用率的加权平均。某条链路的利用率增大时,该链路引起的时延就会迅速正价。当网络的通信量较少时,产生的时延并不大,但在网络通信量不断增大时,分组在交换节点上的排队时延会随之变大,因此网络引起的时延就会增大。令D0表示网络空闲时的时延,D表示网络当前的时延,那么在理想的假定条件下,可用以下公式来表示D、D0和网络利用率u之间的关系:D=D0/1-U
丢包率:在一定的时间范围内,传输过程中丢失的分组数量与总分组数量的比率。分组丢失主要是两种情况,一种是传输过程中出现误码被节点交换机或者目的主机测出误码从而丢弃,另外一种节点交换机根据丢弃策略主动丢弃分组。
6.计算机网络分层体系结构
a.为何需要进行分层
OSI七层模型和TCPIP四层模型


分层体系结构是功能细化的需求
当我们考虑传输媒体介质、物理接口、数字信号对应的比特0与1关系时,那么就可以统一划分为物理层。
物理层既然解决了实际上的0和1传输问题,那么接下来在传输过程中我们进一步需要考虑以下问题:
以什么信号传输0和1信号
这是物理层考虑的问题。
如何标识不同主机(编址,mac)
如何从通信线路上的比特流中区分出地址和数据(数据封装格式)
如何协调各主机调用总线(媒体接入控制)
以太网交换机如何实现(自学习和转发帧)
如何检测是否出现误码(差错检测)
如何控制接收方和发送方的数据传输量(流量控制)
上述即为数据链路层考虑的问题,此时已经能较好在单个网络上传输。
表示网络和网络中的各主机(网络和主机共同编址)
如何实现路由器转发分组(路由选择协议、路由表和转发表)
上述即为网络层需要考虑的问题,此时能在多个网络上传输。
如何实现进程之间基于网络的通信(进程标识,例如端口号)
如何处理差错(可靠传输和不可靠传输)
上述即为运输层处理的问题,可以实现进程之间的通信。
基于上述层次,就可以指定各种网络协议,通过应用进程之间的交互完成特定的网络应用,进行会话管理和数据展示,那么这些功能就可以划归应用层。
因此,需要一个完整的计算机网络体系结构分层来处理这些问题

一个从服务端向客户端返回http请求报文的图例如下:

b.计算机网络体系结构专用术语
实体是指任何可发送或者接收信息的硬件或软件进程,对等实体即为处于同等层次的实体。
协议是控制两个对等实体在水平方向进行逻辑通信的规则的集合。

在两层之间的通信我们说逻辑通信实际上只是一种假设(实际上要过很多层)
协议即是控制两个对等实体在水平方向进行逻辑通信的规则的集合
协议具有语法语义同步三要素,语法定义交换信息格式,语义定义通信双方要完成的操作,同步定义通信双方时序关系。
协议控制下两个对等实体在水平方向的逻辑通信使得本层能够像是上一层提供服务。

服务访问点SAP即为在同一系统中相邻两层的实体交换信息的逻辑接口,用于区分不同的服务类型,例如帧类型字段、ip数据报协议字段、TCP报文字段或者UDP用户数据报端口号字段都是SAP。


二、物理层
1.物理层功能
传输0和1,实现透明传输比特流,这里的透明是对数据链路层透明
2.接口特性

3.传输媒体




4.传输方式
除了串行传输和并行传输之外,还有同步传输和异步传输
同步传输:

异步传输:

除此之外就是单工、半双工和全双工通信方式了
5.编码和调制
这一块和通原差不多,不多赘述。

奈奎斯特和香农不再赘述
调制速率与码元速率相关
码分复用CMD可以多注意一下:
三、数据链路层
1.链路、数据链路和帧


2.封装成帧,透明传输相关


为了确定不同的帧,添加帧定界

而以太网V2,Mac帧就没有帧定界,而是通过帧间间隔实现的



3.差错检测和误码


其中检错码序列被称为FCS

、
冗余校验通原部分学过不再赘述




4.可靠传输




一般有线需要不可靠服务,无线需要可靠传输

5.可靠传输的三种协议
a.停止等待协议
在正确发送过程中,发送端需要一直将待发送信息存在缓存中直到接收方返回确认分组,同时确认否认分组也可能存在误码,也就无法实现可靠传输。因此就对起进行每次发送计时,即超时重传机制:

但是返回正确信号可能丢失,在超时后可能会再次发送信息给接收方,从而接收方接受两次
发送完之后再发送ACK确认分组

下图解释为何需要对确认分组也进行编号的原因:




注意中间的RTT是由两部分单程传播时延构成
b.回退n帧协议
在前面我们已经提到了等待传输协议不适合传输延时非常大的情况,就可以考虑采用流水线传送信息,应用场景:










c.选择重传协议


why不能大于2(n-1)



6.点对点协议
a.概述


b.帧格式

c.透明传输


d.差错控制



7.共享式以太网
a.发展历程


b.网络适配器和mac地址


数据链路层必须要使用地址从而在广播信道等情况下来区分各个主机,因此引入mac地址








环路会造成广播帧在环路中永久兜圈的问题,因此使用BPDU即网桥协议数据单元进行沟通,各交换机根据BPDU的一些参数按照生成树所协议所使用的生成树算法,从而阻塞某些交换机的接口



8.CSMA/CD协议
a.基本原理







CDMA、TDMA、FDMA就分别是码、时、频分多址技术,注意区分。






b.最小帧长和最大帧长




10.共享以太网退避算法






11.集线器共享式以太网




12.以太网扩展
a.集线器扩展





b.网桥扩展

网桥不会像集线器那样合成碰撞域

网桥转发:

网桥丢弃,检测到AC处于同一网段:

网桥转发广播帧:

13.透明网桥
a.自学习和转发帧的流程

当主机A发送单播帧给B:

当主机D发送单播帧给A:

主机C发给A:


b.透明网桥的生成树协议STP



13.交换式以太网


14.以太网交换机


交换机通过查找转发表,发现X和E在同一接口2,交换机知道E已经收到了该单播帧,故丢弃X发送的单播帧。




15.共享式和交换式对比
单播帧:

广播帧:

广播帧效果相同,但是原理不同:集线器只是工作在物理层,而交换机需要广播时调用mac地址,因此涉及到数据链路层。
多对主机同时通信:






16.以太网macv2帧格式




17.虚拟局域网






18.虚拟局域网实现机制(802.1Q帧)





下面是不同情况:







19.以太网发展










20.802.11无线局域网
a.概述








b.物理层



c.为何使用CSMA/CA



d.CSMA/CA原理


















21.无线局域网MAC帧






用的最常见的就是中间两种



四、网络层
1.分组转发和路由选择

2.虚电路服务和数据报服务









3.网际协议IP


4.异构网络互联


5.IPV4



6.IPV4分类编址










7.划分子网










8.无分类分组












9.应用规划






10.IPV4地址与MAC地址的封装位置





11.地址解析协议ARP



ARP适合同一局域网使用,不能跨网络使用:


12.IP数据报






同一网络相同用交换机,不同网络用路由器

13.IPV4数据报首部格式

























14.静态路由设置







15.路由选择



16.RIP协议




















17.OSPF协议


















18.BGP协议











19.路由器


20.ICMP协议















21.虚拟专用网






22.NAT





23.IP多播





24.硬件多播











25.IGMP报文










26.多播路由选择












27.因特网、移动;IP,移动












28.IPV6






















29.IPV6地址




















30.软件定义网络SDN






\








五.运输层
1.进程通信





2.端口号







3.UDP和TCP对比




TCP可以全双工



4.TCP首部



















5.TCP连接
























6.拥塞控制






























7.TCP可靠传输









8.TCP超时重传






9.TCP选择确认



六、应用层
1.概述








2.DHCP协议




3.DNS系统











4.文件传输协议FTP





5.电子邮件











6.www












七、网络安全
1.安全威胁




2.密码学








3.公钥体质





4.报文摘要和鉴别










5.数字签名




6.实体鉴别






7.秘钥分发






8.访问控制










9.各层安全措施

























10.防火墙














11.网络攻击及防范


故意发送错误IP报文
























