首发于 计算机人的精进指南
理解计算机网络:Internet基本原理

理解计算机网络:Internet基本原理

本文适用专业/非专业人士,非专业人士可以略读。 :)

一.网络的组成

1.1 网络的组成

图1-1 计算机网络(a)与Internet(b)

计算机网络由计算机与连接节点组成,这个节点一般为集线器。比如你们宿舍所有的电脑用集线器连在一起,这就是一个网络。

网络的网络通过路由器进行连接,例如宿舍的所有同学要上网,就要把本地网络通过路由器连到可以上网的网络上。

因此,计算机网络需要按规模分类;网络的网络,就被我们叫做互联网(Internet)。

网络把许多计算机连接在一起,而Internet把许多网络通过路由器连接在一起。

1.2 三层ISP架构

图1-2 三层ISP架构
图1-3 三层ISP架构的概念图

大家不要被ISP(Internet Service Provider,互联网服务提供商)的概念吓住,我们所说的中国电信、中国移动、中国联通三大厂就是ISP。

ISP可以从互联网管理结构NIC(网络信息中心)那边去申请IP。

三层架构采用 "主干ISP -> 地区ISP -> 本地ISP -> 校园ISP/企业ISP"的三层逻辑架构。

例如你向好友发了一条微信,这条微信首先会从你所在公司/学校的内网上发到当地的服务器,再从当地服务器发送到地区服务器,之后从地区服务器通过移动/联通/电信的服务器向你好友所在地的地区服务器转发,再通过本地服务器最终转发到好友所在公司/学校的内网。

但是,我怎么知道这条微信在网络中走哪条路径呢?

--- 这个就是在之后的章节中会提到的,协议栈。即这条信息在发送的过程中会封装大量的协议数据,以便网络的计算机在传递和转发过程中进行理解。


这样的网络,数据流量一大,有没有什么优化方案?例如在低层ISP之间搭桥?

IXP(Internet eXchange Point,互联网交换点)就是这样一个方案,相当于在地区ISP之间直接相连进行交换分组,不需要走主干ISP。

特点:

图1-4 2016年2月6日,华为宣布位于荷兰的全球最大IXP(互联网交换点)AMS-IX(阿姆斯特丹互联网交换中心)选择华为OSN902100GWDM作为数据中心解决方案,以维持一个经济高效的城域网络,去应对云时代、在线视频时代以及物联网时代数据流量的持续增长
图1-5 2019年6月29日的AMS-IX的IXP网络传输流量

详细的数据可以从AMS-IX官网看到:

1.3 互联网的组成

图1-6 互联网的组成
图1-7 网络的核心是交换网络

1.3.1 边缘部分

互联网的边缘是主机,计算机不全是主机,用户使用的才是主机。例如: 办公电脑、网站服务器、数据库服务器...这些都是主机,路由器是计算机,但不是主机。

主机之间(进程)的通信方式:

  • C/S 方式(客户 - 服务器)
  • P2P方式(peer-to-peer,对等连接)


我们所说的B/S架构、C/S架构,都是属于C/S这种方式(客户请求,服务器响应):

图1-8 C/S 方式进行主机(进程)通信


P2P方式是指两台主机在通信时不区分发送、服务方,只要都开着P2P软件就可以进行平等连接。

图1-9 P2P方式进行主机通信
早期的迅雷采用P2P的方式,资源存在用户(装有P2P客户端)本地进行共享,P2P用户越多,服务器越多,下载速度越快。如今的迅雷使用的是CDN。

1.3.2 互联网的核心部分

互联网的核心部分说白了就是进行数据的交换

主要通过以下三种方式进行网络数据的交换:

  • 电路交换
  • 报文交换
  • 分组交换
图1-10 三种网络交换方式

1)电路交换:在通信之前,建立双方独占的物理通道。

图1-11 用交换机连接许多电话

当双方都建立了独占的物理通道之后,ABCD的任何一个节点都是独占的,这就是所谓打电话占线。

优点:

  • 通信线路双方独占,数据直达,传输时延小,实时性高
  • 双方顺序发送,保证数据时序性
  • 可以传输模拟信号,也可以传输数字信号
  • 控制简单

缺点:

  • 建立连接需要一定时间
  • 物理通道独占,其他用户无法使用,使用率低
  • 不同类型、速率的终端难以通信,很难控制差错

2)报文交换:以报文为基本单位,报文携带有目标地址、源地址等信息,在交换节点采用存储转发的方式。

这个就好比现在的快递,通过一个一个的快递点进行存放传输,单位是整个包裹

图1-12 快递的逻辑就是报文交换的逻辑

其他应用: 电报、传真。

优点:

  • 不需要建立通信线路,用户随时可以发送报文
  • 通信双方不固定占有一条线路,线路利用率有所(相对电路交换)提高

缺点:

  • 数据进行整份报文的存储转发,加大了延时性,实时性相对也比较差
  • 只使用数字信号,因为模拟信号很难直接存储
  • 报文没有长度限制,要求存储转发节点有足够的缓冲空间

3)分组交换:仍然采用存储转发的方式,将报文分割成若干组,逐个将这些组发送出去

具体可以参考图1-8。

优点:

  • 传输粒度更小,提高了网络的线路利用率
  • 存储粒度更小,降低了存储时间,减少网络延时;存储转发节点只需要固定大小的缓冲区就够了
  • 减少了出错机率与重发的数据量(不需要整篇报文重发)
  • 分组策略,可以结合优先级策略,发送一些紧急数据

缺点:

  • 时序问题、分组丢失问题
  • 仍然存在转发延时
  • 每个组需要加入附加信息,加大了信息量,降低了通信效率,增加了处理时间

小结:

  • 数据量大,传输时间 >> 呼叫时间,适合电路交换。
  • 计算机间优先级通信适合分组交换。
  • 端到端的通路由许多段的链路组成,适合分组交换。

二.计算机网络的分类

2.1 什么是计算机网络


图2-1 通信系统模型

计算机网络:

使用单一技术的自主计算机的互联集合。计算机之间的通信可以参照图2-1的通信系统。
  • 单一:使用标准化的技术。
  • 自主:计算机之间没有主从。
  • 互联:互联互通。

互联网(Internet):

网络之间通过路由器/交换机等设备互联而成的网络。

2.2 按照网络的作用范围分

图2-2 按照作用范围分

2.2.1 WAN , Wide Area Network 广域网

图2-3 中国对外的海底光缆

广域网传播范围广,一般用于世界的国家、地区之间的网络连接,一般范围为几十到几千公里不等。远距离传输,需要高速链路。

2.2.2 MAN ,Metroplitan Area Network 城域网

图2-4 华为中标天地通北京城域网传输项目助力打造高速运营网络

城域网一般用于城际信息的传输,一般使用的技术为以太网,传输范围为5~50km。

2.2.3 LAN , Local Area Network 局域网

局域网的作用范围一般就是1km左右,公司、学校一般都有多个局域网(企业网/校园网)。

图2-5 企业网模型
图2-6 企业网的实现案例

交换机连接上层网络,一般为MAN城域网或者上层的LAN。

2.2.4 PAN ,Personal Area Network 个人局域网

一般使用无线技术,因此也常被称为WPAN。我们手机都有共享WIFI,共享热点的功能,这些功能就是使用PAN技术。

图2-7 手机热点

当然现在的手机还有共享WIFI的功能。

图2-8 手机共享WIFI功能

2.3 按照网络的使用者分

  • 公用网络:电信运营商出资建造的大型网络。接入需要一定费用。(简称外网)
  • 专用网络:单位内部建造的网络。这种网络不向本单位以外的公众开放。(简称内网)

2.4 物理网络拓扑类型

图2-9 物理网络拓扑的类型

三.计算机网络的相关指标

3.1 非性能指标

3.1.1 价格

图3-1 浙江绍兴电信资费一览

我是绍兴人,用个绍兴的资费列表。

如图100M的带宽,一年将近1120元开销。100M = 100*10^6/8/1024/1024 ≈ 11.92 MB/s的传输速度,网速大约为70%,也就是将近8.344MB/s。但是还有多人共享、带宽流量分配的问题,分到你手上的不多。

全国其他地区宽带价格查询,不要听那些当地营业厅忽悠的:

3.1.2 网速

网速:连接网络的主机在数字信道商的数据传输率。

一般用数据率或者比特率形容,一般使用bps作为单位(b/s)。

网速其实就是带宽的一个实际体现,如下3.2.1中写出了从带宽计算到最大网速的实例。

3.1.3 质量

可靠性、稳定性、扩展性、升级能力

3.2 性能指标

3.2.1 带宽

带宽:在单位时间内从网络中的某个点到另一个点能通过的”最高数据率“。

一般采用单位:比特每秒 b/s,也用kb/s、Mb/s、Gb/s、Tb/s等。

注意:运营商一般都是吹带宽,因此100M带宽,这里的"兆"是10^6b/s,而不是计算机中的2^20b/s。

10M的(额定)带宽,也就是10*10^6/1024/1024 ≈ 9.53Mb/s。上行数据最大总带宽(约占100M的10%)约为0.95Mb/s,下行数据最大总带宽(约占100M的70%)约为6.68Mb/s。如果设备数多的话,或者设备带宽占用大的话,你的手机下行一般最大能分到0~1Mb/s,当然也会往上,这与带宽分配算法和实际的吞吐量有关系。
* 额定表示绝对上限。

3.2.2 吞吐量

吞吐量:单位时间内通过某个网络(或信道/接口)的实际数据量。

对于1Gb/s额定速率的以太网,也就是说该以太网的吞吐量绝对上限为1Gb/s,实际的吞吐量可能只有100Mb/s,并不会达到其额定速率。

3.2.3 时延

时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
  • 发送时延: 主机/路由器发送数据帧所需要的时间。
  • 传播时延: 传播介质在信道中的传播需要花的时间。
  • 排队时延: 在通过若干个中间路由器时需要进行排队等待,这些时间的总和为排队时延。
  • 处理时延: 主机/路由器收到数据分组需要进行一些处理需要花去的时间。

1) 发送时延

图3-2 发送时延的计算公式

2)传播时延

传播时延 = 信道长度(s) / 传播介质在信道上的传播速度(m/s)

光纤中的传播速度为2.0*10^5 km/s , 1000km的传播时延就是5ms。

3)排队时延

分组在经过网络传输时,要经过许多路由器。分组在进入路由器后要先在输入队列中排队等待处理。在路由器确定好转发接口后,还要在输出队列中排队等待转发。这就产生了排队时延。

排队时延的长短一般取决于当时的通信量,通信量非常大可能会导致溢出,使得分组丢失,这时排队时延就是无穷大。

4)处理时延

主机/路由器在收到分组时需要花一定时间处理。

  • 分析分组的首部
  • 从分组中提取数据部分
  • 进行差错检验
  • 查找适当的路由
  • ...

小结:

图3-3 不同时延产生位置

我们打游戏的时延大头一般是传播时延。

例如晚上的时候参与瘟疫公司游戏的连机,一般会连到欧美玩家,这个时候时延非常大。这个时候就需要开加速器。

3.1.4 时延带宽积

用户买一个网络时,思考的最重要的点是? -- 这个网络卡不卡。

这就一般是由网络时延 和 网络带宽的两部分影响因素。时延带宽积就是一个说明这个网络卡不卡的核心指标。

时延带宽积 = 传播时延 * 带宽

链路像一条空心管道,管道的截面大小为带宽,长度为传播时延。带宽越大,管道的截面越大,允许通过的数据速度越大;时延越小,管道长度越短,数据到达的时间越短。

图3-4 实验带宽积

某链路时延为20ms,带宽为10Mbit/s.则时延带宽积为 20*10^(-3)*10*10^6 = 2*10^5bit。

这表示,如果这条链路连续发数据,当第一个比特到达终点时,发送端就已经发送了20万个比特。时延带宽积也叫做以比特位单位的链路长度

3.1.5 往返时间 ReTurn Time ,RTT

RTT: 从分组发送传输出去到另一段返回确认信息的时间。

图3-5 RTT示意图

A向B发送数据,如果数据长度是100MB,发送速率是100Mbit/s,那么发送时间大约为8.39s。

图3-6 计算例子发送时间

如果B正确收完100MB的数据,就需要返回确认。假定A需要收到ACK后才能继续向B发数据。假设往返时间RTT=2s,则可以计算其有效数据率大约为80.7Mbit/s。

图3-7 计算例子有效数据率

因为数据是在持续发送的,发送传输的时间,总结为`分组(发送)时间 + RTT`,数据长度/发送传输总时间就是有效的数据率。

3.1.6 利用率

利用率分为信道利用率和网络利用率。信道利用率描述了当前信道的繁忙情况,就像一条马路,路上没有人,说明规划的不好;路上人太多了,就会造成拥堵。

带宽就是这条马路是几车道的,时延就是我需要等多久才能过去,而信道利用率则是这条路每秒进出多少人。

而网络利用率,则是计算这个街区平均进出多少人。也就是网络利用率是全网络的信道利用率的加权平均值。

图3-8 计算当前网络时延

D----当前网络时延 ,D0----网络空闲时的时延,U----网络的利用率

信道/网络的利用率过高会产生非常大的时延。

图3-9 时延与利用率的关系



4.网络协议栈/参考模型

阎锡山为了做山西土皇帝,山高皇帝远,在自己势力范围内建造窄轨铁路,蒋介石国军的火车无法进入山西境内,无法便利调动军队、物资,实现一人独大的军阀割据格局。以互联网的眼光看,如果标准轨道铁路网是一个互联网,那阎锡山的窄轨铁路就是一个自我封闭的局域网,为了打破这种非标准化的私有标准,需要制定一个大家都遵守的国际标准。
(参考: 关于OSI模型的一些疑问?)

为了建立标准化、可扩展、易于维护的网络结构体系,采用分层的方式建立了网络协议栈的参考模型。目前世界上主要流行的参考模型为OSI七层协议、TCP/IP四层协议栈以及五层协议栈。(图4-1)

为什么需要参考模型?

  • 各层工作独立,层之间提供标准化结构,降低协议工作的复杂度。
  • 灵活,任何一层改变不会影响其他层。
  • 易于维护,每层都可以单独调试。
  • 每层的实现技术可以不同,降低了实现的复杂度。
  • 标准化。
图4-1 计算机网络协议栈

4.1 OSI七层参考模型

图4-2 OSI七层参考模型

4.2 TCP/IP四层协议栈

这个一般是程序员界(应用界)讲的最多的模型,因为它最简单、起名字最直接,能够很快的点明设计的要点。

  • 1)网络接口层 : 物理层 + 数据链路层
  • 2)IP层: 网际层,对应网络层
  • 3)TCP/UDP层:运输层
  • 4)应用层

4.3 五层参考模型

五层参考模型结合了OSI七层模型的标准与TCP/IP四层协议栈的简洁的优点,是学术界讲的最多的模型。本系列主题将使用本模型进行介绍。

1)物理层

物理层的单位是bit。这一层我们的要求不高,物理层主要考虑的是如何在各种计算机的传输媒体上传输比特流

图4-3 通讯系统基本逻辑

图4-3的上半部分描述了计算机物理层的主要工作。物理层中,主要通过调制解调器进行模数转化,计算机主要进行比特流的解读。

图4-4 外置调制解调器

很眼熟吧,没错,调制解调器就是我们经常说的猫,通过猫之后,信号就可以接入电话线了。

2)数据链路层

主要讨论在一个局域网中,分组怎么从一个主机,传输到另一台主机,但并不经过路由器的转发。也就是网络内的传输,跨网络的传输在网络层讨论。

本层的数据单位为帧,上层的IP数据报传入本层封装成帧之后往下传递。

图4-5 数据在数据链路层的逻辑传递

3)网络层

网络层讨论网络互连的问题,也就是网络直接通过路由器、交换机等设备进行连接,简单说就是跨网络的数据传输问题。

本层针对的数据格式为IP数据报,本层的协议比较少,IP、ICMP。

4)传输层

传输层主要解决的是端到端服务的问题(也就是主机到主机的数据沟通)

传输层基于网络层,建立了一些用于数据传输的协议。比较核心的就是TCP、UDP协议。

传输层的处理数据单位叫做用户数据报,有时也叫做报文段

图4-6 某公司TCP/UDP的端数据发送接收工具

5)应用层

应用层主要是解决进程到进程之间的通信问题

问题:

1.数据在各层之间的传递过程?

图4-7 数据在各层之间的传递过程(五层参考模型)

2.交换机连接网络的思路是怎样的?

交换机中有一张MAC地址表,或者叫做端口地址表,记录了交换机的端口与所连机器设备MAC地址的对应关系表。

图4-8 交换机中的MAC地址表,核心内容为“交换机端口-端口连接的MAC地址”

当某个帧经过这个交换机时,首先会查找帧中的MAC地址是否存在表中,如果存在,就会把帧从交换机的对应端口输出;如果不存在,就会向所有的端口发送本帧。



3.集线器、路由器、交换机分别工作在哪个协议层?

集线器:只做中继和放大,将一条线分到多个计算机罢了。所在物理层。

调制解调器(猫) : 做模数转换,工作在物理层。

交换机:连接网络的中间节点,其工作原理在问题2中说明,主要用于解决主机之间网络的建立的问题,因此工作在数据链路层。

路由器:是一台特殊功能计算机,既然是计算机,所在一定是网络层(IP层)。从图4-7中也可以发现数据到路由器被解包到IP层处理之后排队继续封装传递。

图4-9 解释例图

参考致谢

[1] 哈尔滨工业大学计算机网络课程 计算机网络_中国大学MOOC(慕课)

[2] 华南理工大学计算机网络课程 计算机网络_华南理工大学_中国大学MOOC(慕课)

[3] 谢希仁.计算机网络(第七版)[M].北京:电子工业出版社,2017.1:1-38



2019年7月3日晚20:00完成,于长沙。修正维护中 ......

深圳SEO优化公司来宾百姓网标王哪家好永湖seo排名公司济源如何制作网站报价金华网站seo优化推荐西乡建设网站推荐金华建站推荐拉萨百度关键词包年推广多少钱衡阳网站开发多少钱深圳网站优化排名哪家好迁安百搜标王公司巢湖网站改版公司许昌外贸网站制作推荐拉萨外贸网站设计公司怒江网站优化排名哪家好泉州seo哪家好湘潭网站优化按天扣费红河百度关键词包年推广开封百度竞价多少钱永湖百度关键词包年推广推荐益阳网站制作吉祥设计网站推荐潮州网站制作设计公司襄阳网站建设设计价格河池企业网站改版报价镇江百度网站优化排名公司咸宁网站优化软件推荐盐田网站开发价格诸城网站推广工具公司昆明优化公司大丰seo歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化