TCP/IP 协议体系结构四层分别是什么?

简介: TCP/IP协议体系结构四层分别是:1、数据链路层;实现网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。2、网络层;实现数据包的选路和转发。3、传输层;为两台主机上的应用程序提供端到端的通信。4、应用层;负责处理应用程序的逻辑。

TCP/IP体系结构的优点:
(1)简化了计算机网络的结构,由原来的七层编导现在的四层,但是其功能并没有减少。

(2)每一层即独立又有联系,独立是因为如果那一层出现问题了不会影响其他层的工作,联系是因为上层协议又使用下层协议提供的服务。

由上也可以看到TCP/IP协议族是一个四层的协议系统,从下到上依次是数据链路层、网络层、传输层、应用层。每一层通过若干协议完成不同的功能,上层协议使用下层协议提供的服务。下来我就谈一下每一层的功能和常用协议。

1、数据链路层

功能:实现了网卡接口的网络驱动程序,以处理数据在物理媒介(如以太网、令牌环等)上的传输。

对应设备:网线、网桥、集线器、交换机

常用协议:

(1)ARP(地址解析协议):它实现IP地址到物理地址(通常是MAC地址,通俗的理解就是网卡地址)的转换。

(2)RARP(逆地址解析协议):顾名思义,它和ARP是相反的,它是实现从物理地址到IP地址的转换。

那有人就会问它们的用途是什么呢???

ARP用途:网络层使用IP地址寻找一台机器,而数据链路层则是使用物理地址寻找一台机器,因此网络层必须先将目标机器的IP地址转化成物理地址,才能使用数据链路层提供的服务。

RARP用途:RARP协议仅用于网络上的某些无盘工作站,因为缺少储存设备,无盘工作站无法记录自己的IP地址,然而通过RARP就可以看到从物理地址到IP地址的映射。

2、网络层

功能:实现数据包的选路和转发。

对应设备:路由器

常用协议:

(1)IP协议(英特网协议)根据数据包的目的IP地址来决定如何将它发送给目标主机。如果数据包不能直接发送给目标主机,那么IP协议为它寻找一个合适的下一跳路由器,将数据包交给路由器来转发,多次之后数据包将到达目标主机,或者因发送失败而被丢弃。

(2)ICMP协议是网络层的另一个重要协议,它是IP协议的重要补充,主要用于检测网络连接。

8位类型:将ICMP报文分为两大类:一类是差错报文,比如目标不可达(类型值为3)和重定向(类型值为5);另一类是查询报文,用来查询网络信息。

有的ICMP报文还用8位代码字段细分不同的条件。比如代码值0表示网络重定向,代码值1表示主机重定向。

16位校验和:对整个报文(包括头部和内容部分)进行循环冗余校验(CRC)。

注意:ICMP协议并非严格意义上的网络层协议,因为它使用了处于同一层的IP协议提供的服务,而一般来说,上层协议使用下层协议提供的服务。

3、传输层

功能:为两台主机上的应用程序提供端到端的通信。与网络层使用的逐跳通信方式不同,传输层只关心通信的起始端和目的端,而不在乎数据包的中转过程。

主要协议:

(1)TCP协议(传输控制协议):为应用层提供可靠的、面向连接的和流式服务。

(2)UDP协议(用户数据报协议):为应用层提供不可靠的、无连接的和数据报服务。(TCP和UDP协议的详解和区别将在下一篇详讲)

(3)SCTP协议(流控制传输协议)它是为在英特网上传输电话信号而设计的,这里不再细说。

4、应用层

功能:负责处理应用程序的逻辑,比如文件传输,名称查询和网络管理等。

注意:数据链路层、网络层、传输层复制处理网络通信 细节,所以这些部分必须稳定且高效,因此它们都在内核空间实现(如上图二),而应用层在用户空间中实现,因为它负责众多逻辑,在内核中实现的话,则会使内核变得非常庞大。也有少数服务器程序是在内核中实现,这样代码就不用在用户空间和内核空间中来回切换(主要是数据的复制)提高了工作效率。

常用协议:

(1)OSPF(开放最短路径优先)协议:是一种动态路由更新协议,用于路由器之间的通信,以告知对方各自的路由信息。

(2)DNS(域名服务)协议:提供机器域名到IP地址的转换。(如将www.baidu.com转化成百度的IP,输入域名就直接可以进入。因为IP地址记的时候太麻烦,就像每个人都是由身份证唯一标识的,但为了好记就起了名字。DNS就是一个将姓名与身份证对应的过程)

(3)telnet协议是一种远程登陆协议,使我们能在本地完成远程任务。

(4)HTTP协议(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式。

相关文章
|
5月前
|
缓存 网络协议 Linux
手把手实现tcp/ip用户态协议栈,帮你实践网络知识(网络必备,面试项目)
手把手实现tcp/ip用户态协议栈,帮你实践网络知识(网络必备,面试项目)
|
7天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
7月前
|
网络协议 网络架构
TCP/IP体系结构(2)
TCP/IP体系结构(2)
27 0
|
7月前
|
网络协议 网络架构
TCP/IP体系结构
TCP/IP体系结构。
45 0
|
11月前
|
消息中间件 网络协议 安全
TCP/IP 应用层常用协议
TCP/IP 应用层常用协议
293 0
|
负载均衡 网络协议 网络安全
TCP/IP:有层次的协议栈
TCP/IP:有层次的协议栈
175 0
TCP/IP:有层次的协议栈
|
网络协议
TCP/IP协议的介绍
TCP/IP协议是众多协议的统称,通过分层结构来管理。可分为七层模型或四层结构
|
网络协议 算法
【网络篇】第十二篇——TCP协议通讯流程
【网络篇】第十二篇——TCP协议通讯流程
【网络篇】第十二篇——TCP协议通讯流程
|
网络协议 网络架构
六、TCP/IP模型 和 5层参考模型
六、TCP/IP模型 和 5层参考模型
六、TCP/IP模型 和 5层参考模型
|
域名解析 网络协议
IP协议, TCP协议 和DNS 服务分别是干什么的?
大家好,我是阿萨。昨天讲解了网络四层协议[TCP/IP协议族分为哪4层?]今天我们学习下IP 协议, TCP 协议和DNS 协议分别是干什么的。
213 0
IP协议, TCP协议 和DNS 服务分别是干什么的?