一文搞懂TCP/IP四层模型

一文搞懂TCP/IP四层模型

上篇介绍过了OSI七层网络模型,本文将介绍四层网络模型,七层网络模型只是理论实现,但是市面上更实际的是四层模型。

七层模型和四层模型比较

一文搞懂TCP/IP四层模型_第1张图片
将应用层,表示层,会话层这些应用层面的协议归为应用层
传输层提供端对端的接口
网络层提供路由选择
数据链路层和物理层统一为网络接口层,提供数据的有效传输

应用层

我想发送数据给对方电脑,我要发送的是一封邮件,我不关心如何传输
应用层只需要关注给谁通信,发送什么内容两件事情,而且通信数据是应用层面的,只关注为用户提供应用功能,例如HTTP,FTP,Telnet,DNS,SMTP协议,代表不同类型的应用,用户传输的数据通过这些协议封装后形成的数据发送给传输层去处理,无需关心后续过程
应用层的工作是在OS的用户态,传输层及以下的工作则在内核态,也就是说程序员写的应用程序只需要关系应用层协议如何封装,封装好之后直接交给OS内核去处理即可

传输层

我想通过网络连接两台设备,然后我直接把数据通过这条连线发送过去,我不关心连线是怎么连起来的

提供端对端的通信,例如IP地址:端口号,端口号就对应着应用,因为网络应用联网后就会监听它用的端口号发来的消息,
本层有两个协议TCP,UDP协议,两个协议之后将专门介绍,

网络层

传输层让我做这个连线的工作,但是网络错综复杂,我来负责如何把这条线连起来

网络层主要协议就是IP协议,会将传输层的报文作为数据部分,再加上IP包头组装成IP报文,如果IP报文大小超过MTU,就会再次进行分片,这样就得到一个即将发送到网络上的IP报文,具体IP如何找到对方位置,将会再之后专门介绍

网络接口层

对应OSI模型的数据链路层和物理层,提供硬件寻址和物理传输数据的作用

在IP头部的前面加上MAC头部,并封装成数据帧发送到网络上

MAC 头部是以太网使用的头部,它包含了接收方和发送方的 MAC 地址等信息,我们可以通过 ARP 协议获取对方的 MAC 地址。

你可能感兴趣的:(面经,计算机网络,tcp/ip,网络,http)