前言

笔记弥补上篇 网络是怎样衔接的?(二)

大家都了解TCP 协议,它应用广泛,场景繁复。但是规划杂乱,开篇先聊一下为啥TCP为什么要规划得如此杂乱?以及 UDP 适合做哪些你之前不知道的事情?

网络是怎样连接的?(三)

TCP为什么要规划得如此杂乱

可靠性

需求将数据可靠的发送给对方。为了结束可靠性,咱们就需求承认对方是否收到了发送的数据,假如没有还需求再发一遍。

高效

这种形式怎么看都很低效,为啥说高效能?为了结束高效的传输,咱们要防止重发现已送达的包,而是只重发那些犯错的或许未送达的包。TCP之所以杂乱,便是由于要结束这一点。

了解了TCP的优点后,来康康UDP,UDP协议没有其他功用,遇到过错或许丢包也一概不管。由于UDP只担任单纯地发送包罢了。所以它很

UDP协议的常见场景

操控用的短数据

网络是怎样衔接的?(一)说到的

像DNS查询等交流操控信息的操作根本上都能够在一个包的巨细规模内解决,这种场景中就能够用UDP来替代TCP

音频和视频数据

这个方面是不是没想到?<{=....(嘎嘎~)

网络是怎样连接的?(三)

音频和视频数据有必要在规矩的时刻内送达,一旦送达晚了,就会错失播映时机,导致声响和图画卡顿

假如像TCP相同通过接纳承认响应来查看过错并重发,重发的进程需求耗费必定的时刻,因而重发的数据很可能现已错失了播映的时机。一旦错失播映时机,重发数据也是没有用的,由于声响和图画现已卡顿了,这是无法挽回的

咱们能够用高速线路让重发的数据能够在规矩的时刻内送达,但这样一来可能要添加几倍的带宽才行。

此外,音频和视频数据中缺少了某些包并不会产生严峻的问题,仅仅会产生一些失真或许卡顿罢了,一般都是能够承受的。在这些无需重发数据,或许是重发了也没什么意义的状况下,运用UDP发送数据的效率会更高

本篇想聊的点

  1. 信号在网线和集线器中传输
  2. 交流机的包转发操作
  3. 路由器的包转发操作
  4. 路由器的附加功用

信号在网线和集线器中传输

概念

从核算机发送出来的网络包会通过集线器、路由器等设备被转发,终究抵达目的地。

转发设备会依据包头部中的操控信息,在转发设备内部一个写有转发规矩的表中进行查询,以此来判别包的目的地,然后将包朝目的地的方向进行转发。

邮递员在送信的时候只看信封不看里边的内容,同样地,转发设备在进行转发时也不看数据的内容。因而,无论包里边装的是应用程序的数据或许是TCP协议的操控信息,都不会对包的传输操作本身产生影响。

换句话说,HTTP恳求的办法,TCP的承认响应和序号,客户端和服务器之间的联系,这一切都与包的传输无关。因而,一切的包在传输到目的地的进程中都是独立的,相互之间没有任何关联。

信号衰减

网络是怎样连接的?(三)

我在10米外喊一声跟 在50米外喊一声 声响是会逐渐衰减的

同理网线越长,信号衰减就越严峻。

除了网线长度外,噪声对于电信号的影响也是很大的。

网络是怎样连接的?(三)

原因

以太网中的信号波形是方形的,但丢失能量会让信号的角落变圆,这是由于电信号的频率越高,能量的丢失率越大。信号的角落意味着电压产生剧烈的改变,而剧烈的改变意味着这个部分的信号频率很高。高频信号更容易丢失能量,因而本来剧烈改变的部分就会变成缓慢的改变,角落也就变圆了。

结果

即便线路条件很好,没有噪声,信号在传输进程中依然会产生失真,假如再加上噪声的影响,失真就会更凶猛。噪声依据强度和类型会产生不同的影响,但假如本来就现已衰减的信号再进一步失真,就会呈现对0和1的误判,这便是产生通讯过错的原因。

网络是怎样连接的?(三)

聪明的规划师怎么解决 这个问题能?

网络是怎样连接的?(三)

局域网网线运用的是双绞线,其间双绞的意思便是以两根信号线为一组环绕在一起,这种拧麻花相同的规划是为了按捺噪声的影响。

那么双绞线为什么能够按捺噪声呢?

首要,咱们来看看噪声是怎么产生的。产生噪声的原因是网线周围的电磁波,当电磁波接触到金属等导体时,在其间就会产生电流。因而,假如网线周围存在电磁波,就会在网线中产生和本来的信号不同的电流。由于信号本身也是一种带有电压改变的电流,其本质和噪声产生的电流是相同的,所以信号和噪声的电流就会稠浊在一起,导致信号的波形产生失真,这便是噪声的影响。

网络是怎样连接的?(三)

(a)通过两根信号线的环绕抵消外源性噪声;

(b)通过改变节距按捺内源性噪声。

网络是怎样连接的?(三)

看到这儿应该解决了 为啥淘宝上的网线价格浮动这么大。 9.9包邮上百的也有,由于品种、做工以及运用的原料不相同。

今后在拼夕夕买网线,首要看下这个大类 就了解喽~

有的时候网慢不用定是运营商的问题

网络是怎样连接的?(三)

也有可能是残次网线的问题

集线器将信号发往一切线路

网络是怎样连接的?(三)

当信号抵达集线器后,集线器将信号发送给一切衔接在它上面的线路。

这些设备在收到信号之后会通过MAC头部中的接纳方MAC地址判别是不是发给自己的,假如是发给自己的就承受,不然就忽略

快递员师傅: 身份证号是110xxxx, 你的快递费事拿一下

一切公司的人员都听到了,我不叫张三我就忽略了,叫张三的这个人 听到后 就直接拿走了包裹。便是这个进程。这便是集线器的原理了。

交流机

交流机与集线器两个词放在一起,很明显 交流机更为人所熟知

网络是怎样连接的?(三)

交流机是什么?

大家能够以为交流机的每个网线接口后面都是一块网卡。

网线接口和后面的电路部分加在一起称为一个端口,也便是说交流机的一个端口就相当于核算机上的一块网卡。但交流机的作业方式和网卡有一点不同。网卡本身具有MAC地址,并通过核对收到的包的接纳方MAC地址判别是不是发给自己的,假如不是发给自己的则丢掉;相对地,交流机的端口不核对接纳方MAC地址,而是直接接纳一切的包并存放到缓冲区中。因而,和网卡不同,交流机的端口不具有MAC地址

网络是怎样连接的?(三)

交流机是怎么作业的

交流机依据MAC地址表查找MAC地址,然后将信号发送到相应的端口。

MAC地址表的保护

保护操作分为两种

  1. 写的操作,收到包时将发送方MAC地址以及其输入端口的号码写入MAC地址表中。

  2. 删除、更新的操作,防止设备移动时产生问题(比如我抱走电脑去办公室了)

过错、过期记载从地址表中删除的时刻一般为几分钟,因而在过期记载被删除之前,依然可能有发给该设备的包抵达交流机。这时,交流时机将包转发到老的端口,通讯就会产生过错,这种状况虽然罕见,但的确也有可能产生。不过大家不用严峻,遇到这样的状况一般

网络是怎样连接的?(三)

必定得到 重启的解决办法,没错便是这个办法

只需重启一下交流机,地址表就会被清空并更新正确的信息,然后网络就又能够正常作业了。

路由器

网络是怎样连接的?(三)
总有一款你见过

网络包通过集线器交流机之后,现在抵达了路由器,并在此被转发到下一个路由器。这一步转发的作业原理和交流机类似,也是通过查表判别包转发的方针。不过在具体的操作进程上,路由器和交流机是有差异的。

由于路由器是依据IP规划的,而交流机是依据以太网规划的

首要,路由器会接纳网络包。路由器的端口有各种不同的类型,这儿咱们只介绍以太网端口是怎么接纳包的。

以太网端口的结构和核算机的网卡根本相同,接纳包并存放到缓冲区中的进程也和网卡几乎没有差异。首要,信号抵达网线接口部分,其间的PHY(MAU)模块和MAC模块将信号转化为数字信息,然后通过包末尾的FCS进行过错校验,假如没问题则查看MAC头部中的接纳方MAC地址,看看是不是发给自己的包,假如是就放到接纳缓冲区中,不然就丢掉这个包。假如包的接纳方MAC地址不是自己,说明这个包是发给其他设备的,假如接纳这个包就违反了以太网的规矩。

路由器的端口都具有MAC地址,只接纳与本身地址匹配的包,遇到不匹配的包则直接丢掉

包的有效期

从路由表中查找到转发方针之后,网络包就会被转交给输出端口,并终究发送出去,但在此之前,路由器还有一些作业要结束。

第一个作业是更新IP头部中的TTL(Time to Live,生计时刻)字段 ,TTL字段表明包的有效期,包每通过一个路由器的转发,这个值就会减1,当这个值变成0时,就表明超过了有效期,这个包就会被丢掉

这个机制是为了防止包在一个地方堕入死循环。假如路由表中的转发方针都装备正确,应该不会呈现这样的状况,但假如其间的信息有问题,或许由于设备毛病等原因切换到备用路由时导致暂时性的路由混乱,就会呈现这样的状况。发送方在发送包时会将TTL设为64或128,也便是说包通过这么多路由器后就会寿终正寝

现在的互联网即便拜访一台坐落地球另一侧的服务器,最多也只需求通过几十个路由器,因而只需包被正确转发,就能够在过期之前抵达目的地。

路由器的发送操作和核算机相同

到这儿,发送前的准备作业就结束了,接下来就会进入包的发送操作。

网络是怎样连接的?(三)

这一步操作取决于输出端口的类型

假如是以太网端口,则依照以太网的规矩将包转化为电信号发送出去

假如是ADSL则依照ADSL的规矩来转化,以此类推。

在家庭网络中,路由器后面一般衔接ADSL等线路接入互联网,因而路由器会依据接入网的规矩来发送包。不过,要理解具体的操作进程,需求先理解相应的通讯线路,比较杂乱,因而咱们先挖坑~~。

网络是怎样连接的?(三)

这儿,咱们假设路由器坐落公司等局域网的内部,即输出端口也是以太网,看看这种状况是怎么操作的。

为了判别MAC头部中的MAC地址应该填写什么值,咱们需求依据路由表的网关列判别对方的地址。

路由器怎么判别下一个转发方针的?

假如路由表的网关列内容为IP地址,则该地址便是下一个转发方针

假如路由表的网关列内容为空,则IP头部中的接纳方IP地址便是下一个转发方针。路由器也会运用ARP来查询下一个转发方针的MAC地址。

路由器也有ARP缓存,因而首要会在ARP缓存中查询,假如找不到则发送ARP查询恳求。

假如输出端口为以太网,则发送出去的网络包会通过交流机抵达下一个路由器。由于接纳方MAC地址便是下一个路由器的地址,所以交流时机依据这一地址将包传输到下一个路由器。接下来,下一个路由器会将包转发给再下一个路由器,通过层层转发之后(递归重复),网络包就抵达了终究的目的地

路由器与交流机的联系

IP协议本身没有传输包的功用,因而包的实践传输要委托以太网来进行。路由器是依据IP规划的,而交流机是依据以太网规划的,因而IP以太网的联系也便是路由器交流机的联系。

IP(路由器)担任将包送达通讯目标这一全体进程,而其间将包传输到下一个路由器的进程则是由以太网(交流机)来担任的。

路由器的附加功用

地址转化

为啥要有内网? 为啥不能公司每一台电脑都对接外网?

互联网本来是这样规划的

Bug不对不对 是But

互联网逐渐向大众普及,接入互联网的设备数量也快速增长,如此一来,状况就产生了改变。假如还用原来的办法接入,过不了多久,可分配的地址就用光了。假如不能确保每台设备有唯一不重复的地址,就会从根本上影响网络包的传输,这是一个非常严峻的问题。假如任由这样发展下去,不久的将来,一旦固定地址用光新的设备就无法接入了,互联网也就无法继续发展了。

解决办法

A公司的内部100台电脑没必要与B公司内部的100台相互通讯,只需在每家公司自己的规模内通讯,本来需求200个外网地址,现在不需求那么多了。

公司内部设备就不需求分配固定地址了,从而大幅节省了IP地址。

当然,就算是公司内网,也不是能够随便分配地址的,因而需求设置必定的规矩规矩某些地址是用于内网的,这些地址叫作私有地址,而原来的固定地址则叫作公有地址

私有地址的规矩其实并不杂乱,在内网中可用作私有地址规模仅限以下这些。


      10.0.0.010.255.255.255
      172.16.0.0172.31.255.255
      192.168.0.0192.168.255.255

私有地址本身并没有什么特别的结构,只不过是将公有地址没分配的一部分拿出来规矩只能在内网运用它们罢了。

这个规模中的地址和其他公司重复也没联系,所以对于这些地址不作统一管理,不需求申请,任何人都能够自由运用。当然,假如在公司内部地址有重复就无法传输网络包了,因而有必要防止在内网中呈现重复的地址。

A公司与B公司通讯怎么办? 都是相同的IP怎么交互?

网络是怎样连接的?(三)

行将公司内网分红两个部分,一部分是对互联网敞开的服务器,另一部分是公司内部设备。其间对互联网敞开的部分分配公有地址,能够和互联网直接进行通讯,这一部分和之前介绍的内容是相同的。相对地,内网部分则分配私有地址,内网中的设备不能和互联网直接纳发网络包,而是通过一种特别的机制进行衔接,这个机制就叫地址转化

网络是怎样连接的?(三)

路由器的包过滤功用

包过滤功用 你可能不太懂,我说一个词 防火墙,应该都懂了。

结束撒花 ✿✿ヽ(▽)ノ✿