计算机网络探索(一)计算机网络与因特网
什么是因特网?
结构
所谓因特网(互联网)就是端系统通过ISP(Internet Service Provider)互相连接起来而形成的
服务
从服务角度来看
因特网提供无数应用程序,统称分布式应用程序
所以因特网是应用程序的平台
关键在于,处于一个端系统上的程序怎么像另一个端系统上的程序发送数据 ,比如,几个手机开黑打王者,所以出现了 API(Application Programming Interface),规定了两个端系统之间交互数据的方式,这就是API的作用
协议
我认为,这是从工作机理的角度解释因特网
很简单,只有两个会说中文的人才能用中文交流,“中文”就是双方要遵守的协议
计算机也运行类似的协议,统称为网络协议
这里面水很深,我们以后慢慢再讲
网络边缘
这一节很无聊,简单画一下吧
网络核心
接下来是重头戏,也是考点,上面说的都是废话
分组交换
存储转发:路由器收到分组的所有比特之后,再转出去,也就是先存储,再转发
时延:传到目的地所花的时间
计算:N条速率为R的链路组成的路径
源–>路由器–>目的地
一个箭头表示一条链路,同时明白,路由器有n-1个
当传输文件长为L时时延为
d=NRL
当文件分为p组时
我们发现,这p个组是排队传输的
所以,最后一个传到的组所花的时间就是总时延
而最后一个组除了除了上面的时延外,还有排队时延
他的排队时延是
(p−1)RL
所以加起来就是
d′=(N+p−1)RL
电路交换
总结:分组交换比电路交换更有效率,更灵活
网络的网络
就是构造因特网的众ISP们自己也要连在一起,Regional ISP如果通过Tier 1 IS连接的话得付费(为显逼格,用英文版截图(^▽ ^))
分组交换网中的时延、丢包和吞吐量
时延概述:
类型 | 特点 |
---|---|
处理时延 | 检查分组首部+决定出路+其他操作 |
排队时延 | 队列中,分组在链路上等待传输的时间 |
传输时延 | 将文件全部推到链路所花时间 |
传播时延 | 一个byte从A到B的时间 |
排队时延和丢包
排队时延:人越多时间排队越长,当来的人速率超过去的人,时延将无限大
丢包:队列快满了就丢
吞吐量
吞吐量:主机接受每秒传输数据量
强调1:吞吐量不是量,是速率
强调2:是单个主机接收的速率,不是服务器发送的速率
假定服务器到路由器速率Rs,路由器到客户端速率Rc
则吞吐量=min{Rs,Rc}
假设有多个路由器
则吞吐量=min{Rs,Rc1,Rc2……Rcn}
这叫瓶颈链路
简单讲,就是木桶原理(上面写了发现全是废话,也懒得删了)
协议层次机器服务类型
OSI模型
接下来是重点,也是因为这个内容延伸出了后面的章节
一个小概念,协议栈:各层的所有协议
b中从上到下的七层分别是
应用层,表示层,会话层,传输层,网络层,数据链路层,物理层
五层的是实际用的,七层的OSI是学术界定的
也就是说实际上,表示层和会话层常常归到应用层中
封装
这个图我觉得很重要,左边四个依次加首部字节就变成了另一个东西,极容易混淆!
另外发现路由器可以传到网络层,而链路交换机知道数据链路层
传到目的机后再依次拆封也就是数据帧->数据报->报文段->报文
可能你会好奇为什么要包这么多层,想一想寄快递的情况,不着急,实际上后面的协议会专门解释原因的
第一章后面的没啥好讲了,呀,终于结束了!累人