【网络协议】聊聊网络分层

常用的网络协议

首先我们输入www.taobao.com,会先经过DNS 进行域名解析,转换为59.82.122.115的公网IP地址。然后就会发起请求,一般来说非加密的使用http,加密的使用https。上面是在应用层做的处理,那么接下来就是到传输层,传输层主要是无连接协议UDP以及连接协议TCP,TCP可以通过重传保证数据不丢失。到这一层主要就是两个端口,一个是客户端发起的端口,另一个是服务端一直监听的端口比如80等。传输层传输完毕后,会交给操作系统的网络层,有源IP地址和目标IP地址。

一般都要请求外部服务,需要通过网管,而DHCP 以及MAC地址、ARP协议等就在这里,路由协议,常用的有OSPF和BGP。

网络分层

一个比较好的比喻就是 两个楼梯之间没有天桥连接,想要从A到B ,就必须先从A下去然后爬上B,然后在原路返回。

只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。

分层其实主要解决的问题还是问题的复杂度, 因为网络程序世界硬怼的不仅仅是软件层面 还有各种硬件设备,要想将复杂的数据格式按照不同的方式进行传输,就需要进行分层处理,主要还是硬怼程序复杂度。

相关推荐
武文斌7712 分钟前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
爱吃喵的鲤鱼15 分钟前
仿mudou——Connection模块(连接管理)
linux·运维·服务器·开发语言·网络·c++
爱吃小胖橘40 分钟前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
萧鼎1 小时前
Python schedule 库全解析:从任务调度到自动化执行的完整指南
网络·python·自动化
7哥♡ۣۖᝰꫛꫀꪝۣℋ2 小时前
网络层--数据链路层
网络·tcp/ip·智能路由器
_清浅2 小时前
计算机网络【第四章-网络层】
网络·计算机网络·智能路由器
沐浴露z2 小时前
【深入理解计算机网络08】网络层之IPv4
网络·计算机网络·网络编程·信息与通信·408
北城以北1234 小时前
生成树协议STP详解
网络协议
望获linux4 小时前
【实时Linux实战系列】实时系统的可观测性:Prometheus 与 Grafana 集成
大数据·linux·服务器·开发语言·网络·操作系统
红尘客栈25 小时前
K8s-kubeadmin 1.28安装
java·网络·kubernetes