正文
因特网的组成
因特网的核心部分
核心部分指的是能够让计算机通讯的网络,这些计算机我们称之为边缘部分。
边缘部分和核心部分用到的技术我们接下来一一来讲。
主机之间的通信方式有两种。
客户服务方式 C/S
客户服务器方式:简称CS。举个例子,我们通过浏览器访问一个网站,这个网站就是一个服务器,而我们使用的浏览器就是一个客户端,这种客户端访问服务器的方式,就是CS。我们正常下载一个电影,速度还可以,假设有多个人同时下载这一个电影,如果大家都从这一个服务器上下载,那么这个服务器的带宽就会有压力,速度也会明显下降。也就说客户端越多,服务端提供的下载速度越慢。
对等服务方式P2P
对等方式:简称P2P。P2P下载:下图所示,假设C是服务器,有一个500M的资源,D从C开始下载,经过一定时间下载了200M;此时F想要下载C的资源,那么F可以把D当成一个服务器,并且从D中下载这200M的资源。也就说这些计算机既是服务器也是客户端。也就说一台计算机下载资源的源头可以是多个的,然后测试多个源头的速度,并且分块下载最佳的部分。也就说P2P中下载同一资源的PC越多,速度越快。
因特网的边缘部分
电路交换
数据交换的方式如图所示。计算机网络就是使用分组交换来通信的。但是我们这边具体拓展一下。
电路交换:就是打电话。当A给B拨号时,交换机在内部给他们两个建议连接,原理很简单,就是需要通话时,令他们相连,结束后释放连接即可。
而且AB通话时,CD也可以申请新的线路进行通话。这个过程就是申请通信资源的过程。
ACD为本地,B为其他地区。连线方式如图所示,这条黑线就是一条临时专线,A发的数据B必定能收到,接收端只有一个,所以这种时候不需要写目标地址。
占线:当A与B在通信中,D如果想给A打电话,资源发送到端口发现通信中,则需等待。
电路交换适合于实时通讯,核心路由器之间可以电路交换。也就是说,语音视频这类用电路交换比较合适,允许在说话之前等待几秒钟把电路连接起来,之后的交流很流畅。但是不允许AB之间交流有很大的延迟。
分组交换
计算机网络就是计算机网络的交互方式。发送端这一串比特流,假设他是一个word文档,这个完整的文档就叫报文。这个报文假设是20M,要传输的话过大,需要分段传输。把一个报文分成多段,每一段都要写上地址(接收端是谁)。接收端分批收到后,去掉首部,然后取得三部分数据再整合,获得一个完整的word文档。【具体的数据包传输内容后续会做详解】
大多数情况下效率低下,因为很多链路闲置并未被使用
H1向H5发送分组,分成若干个数据片段。路径是多样的,比如ABDE/ABE/ACE/ACBE。这些数据片段不一定走的是同一个路径。他们会选择最佳路径,说不定走哪一条,因为不同时间点,同一线路的拥堵情况也不同。整个网络中的所有线路都可以复用。路由器有存储转发的功能,每个路由器的每个端口具备一定是数据存储功能,也就是说数据包传输时,同一方向的数据包可以进行排队等待。当然,排队不能太多,否则会导致数据包丢失(丢包)。
分组交换的优点:高效、灵活、迅速、可靠。问题:时延(网络聊天发送消息有时候会卡,发不出去等)、开销
报文交换
报文交换一般比分组长,报文交换的时延比较长。
详解电路交换
t是时间轴。ABCD是四个独立的设备,ABCD设备之间传输数据当然需要时间。也就说AB之间的斜线的投影就是传输过程中耽误的时间。两个斜线段之间的竖直线段的长度是,设备考虑给哪个设备发送数据包的时间。回馈的反方向斜线的投影就是接收端传输给发送端的确认信息所需要的时间。然后报文的传输时间(竖直的线,就是发送延迟),很直观。四边形的最下面斜边的投影是传输时延(延迟)。最后的三斜线就是释放连接耽误的时间,
报文交换:
报文的传输时间(竖直的线,就是发送延迟),很直观。四边形的最下面斜边的投影是传输时延(延迟)。最后的三斜线就是释放连接耽误的时间,两个报文之间的时间间隔是收到上一条报文后的处理时间。
分组交换:
把一个报文分成四段。类似于流水线(计算机组成原理知识。)将一个报文分成1234四个部分,在均等的时间段内,第一个时间段内完成把1从A发送到B,第二个时间段开始发2(A到B),且因为1已经从A发送到B,则这个时间段同时开始将1从B发送到C。同理最大限度高效的分配时间。
三种电路的比较:电路交换发送报文的速度理论上是最慢的,如图所示,报文交换发送了三条报文的时间,电路交换却仅仅处理了一条报文。但是分组交换的效率高下立判。