网络基础知识
1.什么是计算机网络
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,实现资源共享和信息传递。
2.什么是互联网
互联网(The Internet)通过字面意思,就是互相连接的网络,它属于一个比较宽泛的概念,所以没有一个固定的标准,它可以用来表示小到用路由器连接以太网的网络,企业与企业之间连接的网络,大到区域网络与区域网络之间连接的网络。
将计算机网络互相联接在一起的方法叫做网络互联,也就是在这个基础上,形成了覆盖了全世界的互联网。;
3.什么是协议
在计算机通信过程中,我们传输的数据被称为数据包。而数据包的格式都会达成一个统一的格式,这个统一的格式也就是我们所说的协议。数据包在传输过程中每经过一个物理设备都会存在一个程序去依据协议约定的格式解析数据包中的数据。
协议就好比我们寄快递时必须填写好一份物流清单一样,它具有统一的格式,而这个格式是被事先先达成约定的。我们传输的快递每到一个站点都会被存储起来,放进入队列等待,等到处理时会查看物流清单中写入地址位置,通过物流清单中的位置信息,将其正确转发出去,而收货人同样也会查看物流清单查看快递是否寄送给自己的,如果是则收起来,不是则放弃。
3.1 协议的标准化
在计算机通信诞生之初,由于不同厂商的网络产品使用了各自的网络体系和协议,导致很多产品之间互不相通,无法实现不同厂商产品正常的通信,为解决上述问题产生了协议的标准化。
协议的标准化是由ISO(International Organization for Standards国际标准化组织)来制定的,ISO指定了一个国际标准的OSI(Open Systems Interconnection开放式通信系统互联)参考模型,用来对通信系统进行了标准化。
在通信中的协议都是参考了OSI参考模型而设计的,TCP/IP协议也是参考了OSI模型而设计的。
不同物流公司都会定制自己的一份物流清单,不同公司快递无法在其他快递公司站点传递。为了能够让一份快递能够在所有物流公司站点处理,需要定义统一标准的物流清单,这样一份快递就能在所有物流公司站点传递。*
3.2 OSI参考模型
OSI参考模型将复杂的协议分为了易于理解的7个分层,每个分层通过不同的协议来实现特定的功能。
3.3 为什么分层
数据包在传输的过程中,经过的每个物理设备都会存在一个程序去解析数据包,而分层则是将解析数据这个大程序分为多个小程序,每一个小程序去完成一部分数据包解析功能。
白话:就好比我们填写的物理清单,上面会写入你要到达的是哪个城市,区,街道,对于中转城市物流站点只需要知道你去哪个城市而无需关心送到哪个小区!这样也体现分层的好处。
分层的优缺点
优点:
- 每个分层的程序独立运行,某一个分层发生变化,其他分层不会被影响
- 每个分层的程序能更易于扩展,譬如针对同一层的不同的功能,可以使用不同的协议来实现。
缺点:
过分模块化,每个模块要实现相似的处理逻辑
3.4 OSI中分层的作用
OSI参考模型中每个分层的作用:
image
- 物理层是将计算机的比特流与电压的高低、光的闪灭之间的转换。发送方将0、1的比特流转换为电压的高低、灯光的闪灭。接收方将电压的高低、光的闪灭转换为0、1的比特流。
- 数据链路层是将比特流以某种方式分成不同的块进行传输;而这个块我们称为数据帧。
- 网络层负责数据传输的路径选择;
- 传输层负责传输数据的方式和数据的送达;
- 会话层负责何时建立连接、断开连接、连接状态的控制;
- 表示层负责将网络标准格式与计算机应用格式进行转换;
- 应用层负责将计算机应用格式的数据在对应的应用中呈现出来。
4.什么是地址
计算机通信过程中每一个通信主体都会需要物理地址。而地址则是用来来识别网络中的每一个设备或主机的;如传输层的端口号,网络层的IP地址,链路层的MAC地址。
就好比我们去寄快递时要填入的收货人的地址,包含了省、市、区、街道、门牌、收件人姓名;针对不同的物流站点,需要知道的信息会不同,跨省的物流点只需要知道目的城市,而省内的物流点需要知道是哪个市,市内的物流点需要知道是哪个区,区内的物流点需要知道是哪个街道、街道内的物流点需要知道具体的小区及门牌,而快递员需要知道在此地址下的收货人的信息;而这一系列的信息,就构成了地址;
4.1 地址特点
唯一性 在通信网络中物理地址必须具有唯一性。例如当我们同处一个局域网时,IP地址重复时会提醒用户IP地址冲突,要求用户更改IP地址。
层次性 IP地址会根据网络号的位数来描述地址,例如来至于哪个省市,地区
5.通信中传输方式的分类
5.1 按连接型分类
5.1.1 面向有连接型的传输
在发送数据前,需要在收发主机之间连接一条通信线路。譬如打电话需要接通才能讲话,挂断电话连接结束。
TCP是面向有连接型的传输层协议
5.1.2 面向无连接型的传输
不要求建立和断开连接,发送端可在任何时候自由发送数据,接收端需要时常确认是否收到数据。譬如在邮局寄信件。
UDP是面向无连接型的传输层协议
5.2 按数据传输类型分类
5.2.1 电路交换
电路交换在通信之前要在通信双方之间建立一条被双方独占的物理通路完成数据传输。
电路交换的处理过程:
image1、建立连接 2、数据传输 3、释放连接
电路交换对于物流公司来说就好比某种货物的专用通路,建立传输双方需要首先建立通路,由于通路直达,快递包在物流中转站直接转发(相对分组交换),当快递发送完毕再关闭此专用通路。
5.2.2 分组交换
分组交换是将数据包分组(拆分)成更小的数据包通过存储转发的机制在网络中传输。
对于分组交换不存在建立通路的过程,包在传输前只知道我要去哪并没有确定怎么路径到达,发送数据包只需要将包数据发送给最近的路由,
由路由绝对下一个路径节点。
分组交换的大致处理过程为:
image- 发送端计算机将数据分组后发送给路由器(分包)
- 路由器收到分组数据后,按照顺序缓存到相应的队列中,也就是缓存区(存储)
- 最后路由器再以先进先出的顺序将从队列取出,查看地址发送离最自己最近下个路由器节点(转发)
- 经过路由层层转发最终到达接收计算机。
分组交换非常类似于我们生活中的物流,我们会将一个大包裹发送时进行拆分成一个个小包裹,发送给附近物流站点,之后交给物流站点自行转发给收货人。快递中必须存放收发地址,每一个物流站点都需要对包进行存储解析转发。相对于电路交换的专用物流通路,分组交换有如下问题,1 同时每一个物流站点都需要保存数据可能导致站点容量超限而爆仓导致传输阻塞丢包。2 快递中必须添加收发地址 3 物流站点功能相对更加复杂。4 数据被分组只有全部到达,包才发送完成,实时差。
5.2.3 交换方式使用场景
- 若传输的数据量很大,而且传送时间远大于创建连接的时间,则采用电路交换较为合适;
- 当端到端的通路由很多段的链路组成时,采用分组交换较为合适。
- 从提高整个网络的信道利用率上看,分组交换优于电路交换。
5.3 按接收端数量分类
通信时,根据接收端的数量可以分为单播、广播、多播、任播。
image
单播:指一对一的消息传输
广播:在同个数据链路中,将消息从1台主机发送给与之相连的所有其他主机。
多播:对特定类别的所有主机发送消息
任播:对特定组的任一台主机发送消息
6.网络中的通信设备
网络通信被分为7个分层,针对每个分层都有不同的设备。
6.1 通信媒介
通信媒介就是我们生活中的实体电缆和电磁波,如果留心观察,在道路上我们都能发现标明了此处有电缆的字样说明的道路;而电缆又分很多种,如同轴电缆,双绞线电缆,光纤电缆;数据链路层中的通信协议(以太网、ATM、FDDI、帧中继、ISDN)均是在电缆的通信媒介上实现的,而无线是通过电磁波来实现的。
媒介的分类及用途
电缆可以分为很多种,包含双绞线电缆、同轴电缆、光纤电缆、串行电缆
image
什么是传输速率(带宽)
在数据传输的过程中,两个设备之间数据流动的最大值称为传输速率,单位为bps(bit per Second,每秒比特数);由于光和电波的传输速度是恒定的,故在数据传输的过程中,传输速度高指的是在单位时间内传输的数据量的多少;也就是我们所说的带宽,当带宽越大网络传输能力就越强;
带宽就好比城市中的道路,双向2车道则为低传输速率的带宽,而双向8车道则为高传输速率的带宽;当要通过的车辆数量相同的情况下,道路越宽在单位时间内能经过的车辆就越多;
什么是吞吐量
主机之间实际的传输速率被称为吞吐量,单位为bps;吞吐量衡量带宽的拥塞情况
吞吐量就好比城市中每条道路的实际路况,车流畅通,车流阻塞,车流量少;
6.2 网卡
网卡是网络接口卡(NIC)的简称,有时候也被叫做网络适配器、LAN卡;
在网络中的设备都需要配置网卡;如果计算机中没有内置网卡,则无法接入到网络中;如果想接入到无线网,则需要配置无线网卡;
6.3 交换机
6.3.1 中继器
中继器是物理层面上延长网络的设备,相同或不同的通信媒介通过中继器来连接;
包含多个中继器功能的端口的设备,被称为中继集线器;
6.3.2 网桥/2层交换机
网桥是数据链路层中连接两个不同的网络段的设备。
不同的网络段就好收货地址中同一个区的不同街道,一条街道就可以看做是一个网络段。
包含多个网桥功能的端口的设备,被称为交换集线器;
6.3.3 路由器/3层交换机
路由器是网络层面中用来连接两个网络、并对分组报文进行转发的设备;路由器是根据IP地址来处理的,两个网络可以是指两个不同网络号的局域网,譬如192.168.1.0/24与192.168.2.0/24就属于两个网络。
网络层中的两个网络可以看做收货地址中的不同区,一个区代表一个网络;
6.3.4 4~7层交换机
4~7层交换机,主要负责处理OSI模型中传输层至应用层的数据。其作用是以传输层的协议和应用层为基础,分析收发数据,并对数据进行特定的处理。
4-7层交换机,由于应用功能的不同,能处理的场景也是多样化的,譬如当某个服务器站点访问压力过大时,可以在服务器前端添加一个负载均衡器,而负载均衡器就是4-7层交换机中的一种;我们所知的防火墙、广域网加速器等也属于4-7层交换机。
6.4 应用网关
网关是OSI参考模型中负责将从传输层到应用层的数据进行转换和转发的设备。
应用网关可设在应用层或传输层。设在应用层的叫应用层网关,也称代理服务器。设在传输层的叫传输层网关。
在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。