05 网络协议分层

TCP/IP协议的网络分层模型

TCP/IP协议是目前事实上的网络通信标准,将复杂的网络通信划分出多个层次,每一层都有各自的职责,对网络通信进行分治,下层对上层的进行支持。

TCP/IP协议分为四层,包括应用层、传输层、网络层、链路层。

链路层(link layer):负责以太网、WIFI这样的底层网络上发送原始数据包,工作在网卡这个层次,通过MAC地址来标识网络上的设备,也叫MAC层。MAC(Media Access Control Address)地址可以唯一的标识一个网卡,也就标识了网卡所属的设备。

网络层(internet layer):这一层在链路层的基础上,用IP地址取代MAC地址标识设备,将许许多多局域网、广域网连接成一个巨大的网络。

传输层(transport layer):这一层在网络层之上,提供应用程序之间的通信,在这一层为了识别同一设备上的不同应用,TCP/UDP都工作在这一层。

应用层(application layer):这一层在传输层的基础之上,主要是一些面向应用的协议,如Telnet、SSH、FTP、SMTP、HTTP、MQTT等。

MAC层的传输单位是帧(Frame)

扫描二维码关注公众号,回复: 9862413 查看本文章

IP层的传输单位是包(Packet)

TCP层的传输单位是段(Segment)

HTTP层的传输单位是消息或者报文(message)

TCP/UDP协议区别

TCP有状态的协议,需要通信双方先建立连接(三次握手)才能发送数据,而且通过失败重传、发送序号、滑动窗口等技术保证数据不丢失不重复,TCP协议是一对一的通信。TCP的数据是连续的“字节流”,有先后顺序。

UDP无状态的协议,不需要通信双方建立连接,UDP协议尽最大努力交付数据,但不保证数据一定会发送到接收方,UDP是多对多的通信,发出的是分散的数据包,顺序发,乱序收。

OSI网络分层模型

OSI(Open System Interconnection Reference Model,开放式系统互联通信参考模型)是学术上的网络分层协议,它只是一个参考。TCP/IP是一个纯软件的栈,没有电缆、网卡等物理设备的位置,ISO在理论上比TCP/IP的四层协议更加完整。

第一层:物理层,网络中的物理形式,例如电缆、光纤、网卡、集线器等。

第二层:数据链路层,相当于TCP/IP协议的数据链路层。

第三层:网络层,相当于TCP/IP协议的网际层。

第四层:传输层,相当于TCP/IP协议的传输层。

第五层:会话层,维护网络中的连接状态,保持会话和同步。

第六层:表示层,把数据转换为合适、可理解的语法和语义。

第七层:应用层,面向具体应用传输数据。

网络传输的结构

ISO模型和TCP/IP模型的映射关系

四层负载均衡

工作在传输层,基于TCP/IP协议的特性,如IP地址、端口号等实现对后端服务器的负载均衡。

七层负载均衡

工作在应用层,基于HTTP协议的特性,通过解析HTTP报文中的URI、主机名、资源类型等信息,使用适当的策略转发给后端服务器,实现负载均衡。

总结

1、TCP/IP分为四层核心是二层的IP和三层的TCP,HTTP在第四层。

2、ISO分为七层,对应TCP/IP,TCP在四层,HTTP在七层。

3、HTTP利用TCP/IP协议栈逐层打包再拆包,实现了数据传输,每一层对上一层都是透明的。

发布了28 篇原创文章 · 获赞 9 · 访问量 5564

猜你喜欢

转载自blog.csdn.net/rookiegan/article/details/104896989
05
今日推荐