!!!身为程序猿必须知道的知识点
网络分层结构
为什么要分层
在网络协议中的分层。不仅仅是根据负责的功能来简单的划分层次,而且层与层之间会有不可缺少的的封装与传递。对于网络模型各层的封装是根据整个网络模型从上到下的工作流程来划分的。但是,每层之间会有一定的联系,不是独立工作的。
在这里以熟悉的协议 tcp协议 分析。对于网络从上到下的流程为 应用层的网络请求经过传输层加上TCP头,经过网络层加上端口号和IP源地址和目的地址等信息,经过数据链路层加上mac头。
通过层层的封装,得到一个完整的网络包。注意:在网络中,网络包都是完整的,可以没有上层只有下层,但一定不能有下层而没有上层。这样会破坏了网络协议层从上到下的完整性。
到这里,应该可以知道,网络为什么要分层了。这是从功能需求划分,协议维护与方便升级,降低网络通信复杂性出发考虑。
分层的好处
1.各层次之间是独立的。某一层并不需要知道它的下一层是如何实现的,而仅仅需要知道该层通过层间的接口所提供的服务。这样,整个问题的复杂程度就下降了。
2.灵活性好。当任何一层发生变化时,只要层间接口关系保持不变,则在这层以上或以下层均不受影响。
3.结构上可分割开。各层都可以采用最合适的技术来实现。技术的发展往往不对称的,层次化的划分有效避免了木桶效应,不会因为某一方面技术的不完善而影响整体的工作效率。
4.易于实现和维护。这种结构使得实现和调试一个庞大又复杂的系统变得易于处理,因为整个的系统已经被分解为若干个相对独立的子系统。进行调试和维护时,可以对每一层进行单独的调试,避免了出现找不到、解决错问题的情况。<
网络分层结构旨在降低复杂性,提高灵活性和可维护性。OSI七层模型包括应用层、表示层、会话层、传输层、网络层、数据链路层和物理层,而TCP/IP模型通常分为五层(或四层),包括应用层、传输层、网络层、数据链路层和物理层。各层之间通过封装和解封装进行通信,每层都有其特定功能,如传输层的TCP/UDP协议,网络层的IP协议等。路由器、交换机、网关等硬件设备分别工作在不同的层次,实现数据的传输和处理。
最低0.47元/天 解锁文章
3538

被折叠的 条评论
为什么被折叠?



