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

常用的网络协议

首先我们输入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,然后在原路返回。

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

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

相关推荐
可乐鸡翅yeah_2 小时前
个人 / 外包流媒体项目交付实战,M3U8 验收与问题闭环完整工作流
运维·网络·python·低代码·django·m3u8·在线播放
黄俊懿3 小时前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第十节:网关安全-单向加密
网络·数据库·计算机网络·安全·架构·系统架构·架构师
Patrick在香港3 小时前
Python 拉取城巴开放数据:406 条路线,香港岛巴士网络的数字画像
网络·python·数据分析·php·数据可视化·香港·开放数据
一直C4 小时前
Linux系统编程|进程间通信IPC全套详解(1)(管道、信号)
linux·c语言·开发语言·网络·青少年编程·visual studio code
Experience-摆渡4 小时前
自建 IP 轮换方案实战:健康探测 + 熔断剔除 + 粘性会话
网络·网络协议·tcp/ip
luj_17684 小时前
合法避税与投资评估实战指南
c语言·开发语言·网络·经验分享·算法
库玛西4 小时前
Linux网络编程:HTTP/HTTPS协议核心技术全解析
linux·运维·服务器·网络·c++·http·https
暴力求解4 小时前
Linux网络---NAT代理服务、内网穿透
linux·网络·智能路由器
2601_967659895 小时前
大学实训室网络仿真环境搭建:Ranplan 3D射线跟踪双版本技术解析
网络·3d
for_ever_love__5 小时前
HTTP协议及网络请求与响应
网络·网络协议·http