TCP/IP协议族体系结构以及主要协议

现在因特网是使用的主流协议族是TCP/IP协议族,这是一个分层,多协议的通信体系。

这里的TCP/IP协议族和我们经常说的TCP/IP不是一回事,这里要区分一下

首先TCP/IP协议值得是TCP协议和IP协议,而TCP/IP协议族指的是数据链路层,网络层,传输层,应用层上所有的协议。

TCP/IP是一个四层协议系统,自底而上分别是数据链路层,网络层,传输层,应用层,每一层的功能不同,协议也不同。框架图如下所示。

1.数据链路层

功能:数据链路层实现了网卡接口的网络驱动 。

常用的协议:ARP协议(ip地址转换为MAC地址)和RARP协议(MAC地址转换为ip地址)

网路层通过ip地址进行寻址,数据链路层通过MAC地址进行寻址,所以必选将ip地址转换为了MAC地址才能使用数据链路层的寻址。

2.网络层:

功能:实现数据包的选路和转发。通信双方的路由器一般都不是直接相连的,而是通过多个中间路由器连接起来。所以网络层的任务就是选择这些结点以确定两台主机的通信路径。

常用的协议

(1)IP协议:网络层的核心协议就是IP协议,ip协议的功能就是根据数据包的目的ip地址决定如何进行投递。如果数据包不能直接发送给目标主机,那么ip协议就为他寻找吓一跳路由,同时将数据包交付给路由器转发。多次重复后路由器到达目标主机,或者发送失败被丢弃。所以ip地址是根据逐跳的方式确定通信路径。(后续博客会重点讲ip协议,大家先了解一下这个框架)

(2)ICMP:网络层的另一个重要的协议就是ICMP协议,是ip协议的重要补充,主要用于网络的检测。ICMP的报文格式使用的报文格式如下:

8位类型字段用于区分报文类型。把ICMP报文两大类:一类是差错报文,用来回应网络错误,比如目标不可达和重定向;另一类查询报文,这类报文用来查询网络信息。比如ping程序就是用ICMP报文查看目标是否可达。

8位字段来具体区分不同的条件。比如重定向的类型是3,然后重定向也有一些具体类型,比如网络重定向是0,代码1代表主机重定向。

16校验字段就是对整个报文进行校验,用来检验报文在传输过程中是否被损坏。

其实ICMP并不是严格意义上的网络层协议,因为它为网络层的ip协议提供服务。

 3.传输层

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

常用协议:

(1)TCP协议:为应用层提供可靠的,面向连接的,基于流的服务。

可靠:TCP协议使用超时重传,数据确认的方式确保数据正确发送到目的段。

面向连接:使用TCP双方必须建立TCP连接,并在内核中维持一些必要的数据结构,(比如连接状态,读写缓冲区等),当通信结束时双方必须关闭连接释放这些内核数据。

基于流的服务:基于流的数据没有长度限制,它源源不断从通信的一端进入另一端。发送端可以逐个字节向数据流写入数据。接收端逐个字节读出。

(2)UDP协议:与TCP协议完全相反,为应用层提供不可靠,无连接,基于数据报的服务。

不可靠:意味着UDP无法保证数据从发送端正确传送到目的端。如果数据在中途丢失,或者目的端通过数据校验发现数据错误将其丢弃。UDP协议只是简单的通知应用程序发送失败。因此使用UDP协议需要用户自己处理数据确认,超时重传这些逻辑。

无连接:通信双方不保持一个长久的联系。因此应用程序每次发送数据都要明确指定目的地址(地址指的是ip地址)。

基于数据报:是相对与流式服务而言的。每个UDP数据包都有一个长度,接收端必须以该长度为单位进行数据读出,否则数据将被截断。

(3)SCTP协议是比较新的传输层协议,为了在因特网上传输电话信号设计的。

4.应用层

功能:负责处理应用程序的逻辑。应用层和网络层,传输层,数据链路层不同,那三层是在内核中实现的所以稳定且高效。而应用层在用户空间实现,要处理很多逻辑,比如文件传输,名称查询和网络管理等。应用层也可以在内核中实现,但会使内核很大,在内核实现就减少了用户空间和内核空间切换,提高了效率。但是代码实现也复杂,不灵活。

常用协议:(很多很多,只写几个重要的,常见的)

(1)telnet协议:远程登录协议,使我们能在本地完成远程任务。

(2)OSPF协议是动态路由更新协议。用于路由器之间的通信。以告知对方各自的路由信息。

(3)DNS协议提供机器域名到IP地址转换

(4)ping是应用程序,而不是协议,是调试网络环境的必备工具。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TCP/IP协议体系结构是一种网络通信协议体系结构,它由多个成,每个次负责不同的功能。TCP/IP协议体系结构包括以下次: 1. 物理:负责传输比特流,将数据从一个节点传输到另一个节点。它定义了电气、机械和功能接口。 2. 数据链路:负责将比特流转换为数据帧,并在物理网络上进行传输。它提供了错误检测和纠正机制,以确保数据的可靠传输。 3. 网络:负责将数据包从源节点传输到目标节点。它使用IP协议来寻址和路由数据包,以确保数据的正确传输。 4. 传输:负责在源节点和目标节点之间建立可靠的数据传输连接。它使用TCP协议提供可靠的、面向连接的传输服务,或使用UDP协议提供不可靠的、无连接的传输服务。 5. 应用:负责处理特定的应用程序协议,例如HTTP、FTP和SMTP。它定义了应用程序之间的通信规则和数据格式。 TCP/IP协议体系结构的特点包括: - 分结构:每个次都有特定的功能,之间通过接口进行通信,实现了模块化和可扩展性。 - 松散耦合:每个次都独立于其他次,可以独立地进行开发和升级。 - 开放性:TCP/IP协议是开放标准,任何人都可以使用和实现它。 - 可靠性:TCP/IP协议提供了可靠的数据传输机制,确保数据的完整性和可靠性。 - 灵活性:TCP/IP协议适用于各种不同类型的网络,包括局域网、广域网和互联网。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值