当前位置:   article > 正文

计算机网络概述_isp-ixp

isp-ixp

计算机网络

本文参考至cyc大佬的博客,目前已有5.3k的star,地址是:cyc
【ps:第一次写博客,不对的地方请指正。】


一、为什么是网络的网络

网络是将不同主机连接起来的技术。全球有无数个网络,小到一个个人开的无线热点就是一个网络。
而互联网就是最大的网络,他负责将不同的网络连接起来,使得接入互联网的两台之间可以互相通信。

二、ISP与IXP

1.ISP

ISP(Internet Service Provider),是提供各种互联网服务的供应商。普通民众不知道如何使用互联网,比如接入互联网,邮件通信等等,ISP可以帮助用户,它提供透明的服务,用户不需要了解底层实现,但是需要向他们缴纳费用。
ISP按照覆盖范围从大到小分为三级:

  1. 一级ISP
  2. 二级ISP
  3. 接入ISP
    在这里插入图片描述

2. IXP

负责不同ISP之间的互联。

三、通信方式

1. C/S

主机分为客户机与服务器,客户机只能发送请求,而服务器只能被动接收处理请求,给出响应。

2. P2P

即点对点网络。
所有连通的主机之间都是平等的,都可以发送请求和响应请求。
比如说共享桌面等。

四、交换方式

1. 电路交换

两台主机通信的时候,会占据一条完整的物理链路,其他主机不能中途抢占。实现起来很简单,但是链路利用率很低;
通俗点说,就好像通信双方在打电话,一旦双方在通话中,其他人就被占线了。

2. 分组交换

通信时不会占据一条网络,而是将发送的信息分为几部分,标注上己方和对方的主机信息,以及一些分组的不同部分的信息(如这个数据报属于第几个部分),从主机发送出去,由中间的节点查看主机信息选择传输到哪里。
之所以分为多个部分,是因为特别长的数据不利用传输。那为什么分成小的部分就容易传输了,以后看到会补充。

五、时延

时延就是从数据发出去后到对方接收到的耗时
时延 = 传输时延 + 传播时延 + 排队时延 + 处理时延。

  1. 传输时延。这个应该叫做发送时延比较好,指的是从发送方的主机发出信息,到信息完全进入链路所耗费的时间(也包含接收方从链路读取信息到信息完全读入主机的时间。)传输时延与数据量的大小有关,如果一个信息数据量很小,可能很快就封装完了,甚至都不需要分组。而如果数据量很大,封装数据帧就会多耗时很多。
  2. 传播时延。指的是数据在物理链路上的耗时。
  3. 排队时延:当一个中间节点的路由器要处理的数据报很多而它来不及处理时,其他数据包只能排队等待前面的处理完再轮到它。
  4. 处理时延:路由器解析数据报的头信息,分配路由再重新打包所需要的时间总和。
  • 传输时延取决于数据量大小,传播时延取决于通信双方的长短以及网络拥堵程度。

六、OSI参考模型

这个比较不好记,我借用了参考文献处一个大佬的例子:老板发文件。哈哈,有丶牵强了,能帮助理解就好。

  1. 应用层:应用层是为用户提供服务的一层,用户可以选择其中的协议进行自己想要的功能。如,一个公司的老板想将一份重要文件资料发给另一个公司,他只需要思考文件应该写什么,之后的工作交给下面的员工解决。
  2. 表示层:对数据进行加密,解密,格式转化之类的任务。如,另一个公司是在外国,因此需要将文件转为外文;文件很重要,为了防止泄漏,将其经过特殊加密,同样对方的表示层就需要将文件解密。
  3. 会话层:当一次通信开始时,会话层会负责开启双方的一次会话(即双方在会话中可以在继续使用这条连接随时传递信息)。当公司A老板发送文件给了公司B(开启会话),B不敢马上就去执行,他会等待A有没有修改要求的消息传来(维持会话),当然也不是无限制地等待,如果A向B说我保证不会修改了(主动结束会话),或者B等待了A三天时间还是没有消息(超时),B就会按照文件开始动手。
  4. 传输层:负责确定通信双方的连接方式,为上层提供一条连接通信双方的路径,而隐藏底层的实现。同时传输层也有流量控制与差错控制的功能。如,文件当然不可能让员工送过去,而是雇佣快递公司来送,快递公司就是AB公司之间的传输层,他可以根据文件的重要性或者要求运输时间的长短来选择运送方式,而双方不需要了解快递公司是怎么送的。
  5. 网络层:负责数据包在网络中的传输,包括路由选择,拥塞控制,解析头信息等功能。他将储传输层的数据段打包成分组,将分组在底层提供的链路中进行传输。比方是,路由器就好像是快递公司的各个集散网点,可以清楚地规划快递接下来的路径,以达到最快或者最安全的送达。
  6. 数据链路层:负责数据在一个子网中的传播,数据链路层依靠的是主机唯一的物理地址。数据链路层要完成的任务有:
    封装成帧(为了方便差错校验,将数据封装为设定的大小和格式);
    透明传输:由于需要按照一定格式,区分链路上每一帧的开始和结束也需要数据链路层完成,而他的处理会对用户透明,即用户输入什么字符都可以封装为帧,有可能就包含开始或者结束符,这些由数据链路层做转义处理;
    差错校验:为了保证传输过程中数据不出错,由数据链路层按照数据帧提供的校验数据对数据帧进行差错校验,但是他不负责改正错误(如重传),这个交由上层解决;
    数据链路层就好像一个区域中的快递员,可以根据地址信息准确地将包裹送到对方家,如果用户不满意,还可以由快递员记录退货信息。
  7. 物理层,在传输线路中选择的物理介质。比方说,快递在运送过程中是飞机还是货车,快递员送货是三轮车还是卡车,都由物理层决定。

TCP/IP模型和OSI的区别就是把头三层(上层)放到一起,成为了应用层。
![https://img-blog.csdnimg.cn/2021010409370574.gif]一个大佬的图片

七、数据帧,数据包,数据报,分组,数据段,报文。

我从发送方出发,说的是数据异常了一层封装最后传到链路上的成品,在接收方只需要反向解封装就行了。

  1. 报文(message),用户要发送的完整信息,也可以叫做消息。
  2. 数据段(segment),也可以叫报文段,为了实现网络层的分组传输,需要在传输层将原始数据拆分成几个部分,就是数据段;
  3. 数据报(datagram),有的博客说是UDP协议传输的单元,有待考证。
  4. 数据包(packet),也可以叫做分组。是在网络层传输的数据单元,对每个数据段加上控制信息,如这是第几段,目标与本机的ip端口等;
  5. 数据帧(frame),对数据包进行再封装,加上源MAC和目标MAC,就是数据帧。

吐槽一句,这些中文翻译太shit了。。。。懂的也被这些翻译整糊涂了。

参考文献:这位大佬的博客
图片来源

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/159019
推荐阅读
相关标签
  

闽ICP备14008679号