计算机网络是计算机最基础的知识,但是不知道网络是怎么形成怎么运转的又不会影响到平时我们使用计算机,学习计算机网络是为了更深入了去了解计算机与计算机之间的联系,去了解他的运行模式。
要知道计算机与计算机(服务器也包括在内)之间的通信不是简简单单通过一条网线就能够实现的,ISO国际标准化组织制定了五个层次的模型用于对计算机网络进行配置通信,五个模型之间相互独立,但又会互相有联系。
分层进行计算机网路通讯的开发是为了能够更好的完成每一层的任务,就像我们现在的快递一样,快递分为发件人,快递公司,货车运输,快递小哥,收件人,每一个环节都至关重要,但我们只需要去发件,其余的事情一概不用考虑。类比到计算机网络也是如此,他的中间过程也被我们省略,只在乎发信息与收信息。
分出层次之后每一层的作用,然后由专门的工作人员只盯着这一层的功能进行开发与研究,这样不仅仅是进行开发的速度加快了,而且使得整个网络更加的具有条理性,更加严谨。
有了分层的思想之后,我们今天就要开始简单的了解下计算机网络的构造了。
ISO规定的osi五层模型从底层到高层分为物理层、数据链路层、网络层、传输层、应用层。我们日常接触到的就是应用层,应用层是都是些面向对象的图形界面,便于我们操作,而真正的通信远不止我们看到的这么简单
数据就像快递一样,从我们这里发出,到达传输层加上tcp/udp报头,再传到下一层网络层添加IP/arp/imcp报头等,再向下传到数据链路层添加ppp/mac报头,最后到达物理层实现零一比特在双绞线或光纤的传输,这就是数据的封装过程。
接收方也会像发送数据时的状态一样,一步一步解封装,只不过是从之前自上而下改变到自下而上,封装报头变成把报头内容检查核对后提交给上一层,这样最后的“你好”也会出现在对方的应用层,实现数据的横向传输。
我们在电脑上看到的就是在键盘上输入“你好”系统就会自动去处理,例如增加报头之类的工作,然后数据就在物理层转化为二进制零一比特进行传输,当然事实并不是像我这样说的这么简单,比如适配器(网卡)还要进行一些差错检测、向cpu传输数据、转化零一比特等等工作,每一层并不会像是字面上说说的那么简单,他们的工作都会相当的复杂。