计算机网络体系结构
计算机网络体系结构 \huge计算机网络体系结构 计算机网络体系结构
常见的计算机网络体系结构
计算机的网络体系结构是为了统一世界上所有的计算机都能够接入网络而制定的统一标准。
OSI体系结构(法律上的体系结构)
TCP/IP体系结构(实际正在使用的)
不只有主机有TCP/IP协议,交换机也有TCP/IP协议,只不过只有其中网络接口层和网际层。
网络接口层中存放的是各种网络接口,包括有线的网络接口和无线的Wifi接口等。
网际层中包含TCP/IP体系结构中的核心协议也就是IP协议。
运输层包括TCP与UDP协议,可以为应用层提供传输的协议,其中TCP提供的是可靠的传输协议,UDP提供的是不可靠的传输协议。
应用层中包括HTTP、SMTP、DNS、RTP应用协议等。
IP协议真正做到了呈上启下,IP向下可以互连各种网络接口,向上可以互连各种网络应用。
TCP/IP协议更好的叫法是TCP/IP协议族,因为TCP/IP中又包括很多的协议。
网络接口层实际使用的时候没有在过于细致的划分了,但是学习的时候可以恢复成OSI中的数据链路层和物理层,更有利于理解网络接口层的结构。
计算机网络体系结构分层的必要性
计算机网络是一个非常复杂的系统,会有很多的问题,必须对不同模块的问题进行划分,这样就能将复杂的问题简单化,模块化(分层)。
物理层
- 采用怎样的传输介质?
- 采用怎样的物理接口?
- 使用怎样的信号来传输比特0或1?
解决了物理层的问题才能让信号最起码能够传输。
数据链路层
在让信号能够传输的基础之上,有了新的问题。
- 如何标识网络中的各个主机,让每台主机知道传输的信息是不是给它的?(MAC地址,主机编址问题)
- 如何在传输的比特流中成功分离出要传送的信息?(地址和数据)
- 如何协调各个主机的信息发送时间使得总系利用率最大?
解决了上述的问题,在小型的网络中信息就可以顺利发送了。
网络层
整体网络由多个小型的网络构成,刚才物理层中的主机属于同一网络中,只需要比较MAC地址即可,但是如果主机处于不同的网络中呢?
所需解决的问题:
- 如何标识网络以及网络中的各个主机(网络主机共同编址问题,IP地址)
- 路由器如何转发分组,如何进行路由选择?
运输层
应用之间的数据通信需要依靠运输层运输数据。
所需解决的问题:
- 如何解决进程之间的基于网络的通信问题?
- 如果出现的传输的错误,如何处理?
应用层
实现了下面的所有层功能后,应用层的应用可以通过交互来完成特定的网络应用。
小结
?????计算机网络体系结构分层示例
举例:
主机与服务器之间的网络通信实际是指主机中的应用与服务器中的应用之间的网路通信。
大致流程:
首先应用层应用根据HTTP协议构建一个HTTP请求报文
然后应用层将HTTP报文发送给运输层,运输层在HTTP报文段上加入TCP报文端,TCP报文端主要是用来区分发送的应用和保证可靠的传输。
TCP报文被传输到网络层中加入了IP报文段形成了IP数据报,IP报文段主要是用于确保IP数据报可以在互连网上传输,可以被交换机转发。
IP数据报发送给数据链路层后首部尾部添加上ETH,封装成帧,头部的ETH使得帧可以在链路上传输,可以被相应的主机接收,尾部的ETH主要用于检查传输过程中数据是否发生的误码。
帧传输到物理层,物理层看帧的时候会将帧看作是一个比特流,并且加入前导码,告知要接受数据的主机有数据来了,然后将比特流转换为信号在网络中传输。
数据在网络上传输,传输到路由器的时候被接收,先传输给物理层,解封数据成帧,然后去除ETH,成为IP报文传输给网络层,网络层解析IP报文,解析出目的主机的地址,然后在向下层层封装为比特流最后转换为信号传输到目的主机。目的主机接收信号之后向上层层解封为HTTP报文接收信息。之后由服务器应用向主机应用发送响应信号的过程与主机应用向服务器应用发送信号的流程完全一致了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!