建站哪家公司比较好而且不贵,wordpress rss导入,wordpress 添加自定义栏目面板,3万元简装修大全大家都知道的是网络的体系结构#xff0c;现代软件常用的体系结构无非是TCP/IP协议栈#xff0c;OSI因为实现复杂并且效率没有TCP/IP协议栈好#xff0c;所以不用OSI#xff0c;但是#xff0c;最近在复习网络知识的时候#xff0c;发现了一些奇怪的地方#xff0c;那就…大家都知道的是网络的体系结构现代软件常用的体系结构无非是TCP/IP协议栈OSI因为实现复杂并且效率没有TCP/IP协议栈好所以不用OSI但是最近在复习网络知识的时候发现了一些奇怪的地方那就是OSI与TCP/IP协议栈的运输层以及ARP协议有些争执。先看看两个体系的结构吧如下 不知道有没有人注意过那就是在OSI与TCP/IP协议栈中他们的区别有一个是OSI的传输层是面向接连的没有无连接但是TCP/IP协议栈的传输层是面向连接加无连接的不知道大家注意到这一点没有。刚开始学习网络的时候可能也没有往深处想那天复习的时候突然看见就有点疑惑了。一直在想为什么呢
刚开始我想到的是难道OSI没有UDP协议吗错后来才发现我错的离谱因为没有想到一点那就是他们建立模型的时候是不同的OSI是现有划分完层再根据每层划分的功能把协议分进去而TCP/IP是先有了协议根据协议划分的层这使我顿时拨云见日。他们的先后顺序不同且TCP/IP网络层中支持的是IP协议而OSI网络层支持所有的网络协议。
其次再看看下面的图 看看其中网络层的ARP协议有些朋友看到这里应该是疑惑了不对ARP不是是数据链路层的协议吗怎么上网络层了其实我刚开始注意的时候也很疑惑这是为什么呢后来查看了很多的资料看了TCP/IP图解各有各的说法且都是对的。有人说他应该在网络层应为他是服务于网络层的这怎么说呢其实是也很好理解因为网络体系中每一层几乎都是透明的就是你传下来或者传上去的报文中数据部分对于我这一层来说是不知道是什么所以我根本就不知道你的内容我只把自己这一层的功能做好就行了(这里忽略NAT与NAPT),所以很多人感觉既然他要知道IP地址那么他如果是属于数据链路层的话那么就不可能拿到IP地址所以属于网络层。但是很多又说他是链路层的协议所以这就产生了争议但是其实都是对的因为其实他是属于网络层之下数据链路层之上的一个协议从我们所学的五层模型来说的话自下往上我个人认为是它属于2.5层的协议但是如果硬要说的话我会把它归纳到数据链路层。
其实原因是我自己认为的不知道对不对若是有大佬知道希望说一下。很简单最直接的一个列子就是NAT技术他是工作在网络层的但是如果这样的话他结合NAPT技术转换的时候把我们的上层也就是传输层的端口号给改了这说明什么这说明下层我是知道你上一层的内容的(这里只是特殊处理所以使得下层知道了上层的内容)如若不然他是改不了我们传输层的端口号的如若不用这用这个技术那么好你怎么用公网的资源怎么访问公网服务器公网服务器怎么给你所在的局域网返回请求呢?所以个人认为这里的ARP协议与这里有点像如果我有了网络中的唯一标识主机的地址但是跨网怎么办跨越不同局域网需要路由器中路由算法但是我怎么到路由器上肯定是需要再局域网内传输的啊那怎么到路由器上这就需要mac地址了所以此时就需要arp上场了那么arp是属于数据链路层的如果这样的话他怎么知道这个IP地址呢我个人认为它这里肯定是做了类似于NAT技术的那种处理获取了上一层数据的报文内容。所以画图的时候我们都是这样画五层模型 这个是个人理解若是有大佬知道希望可以说一下。