zl程序教程

您现在的位置是:首页 >  系统

当前栏目

Linux网络编程(四)-协议01:概述(数据传输、解释的规则)【应用层协议:HTTP、FTP...】【传输层协议:TCP、UDP】【网络层协议:IP】【链路层协议:ARP、RARP】

2023-09-27 14:20:40 时间

一、什么是协议

从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。

假设,A、B双方欲传输文件。规定:

  • 第一次,传输文件名,接收方接收到文件名,应答OK给传输方;
  • 第二次,发送文件的尺寸,接收方接收到该数据再次应答一个OK;
  • 第三次,传输文件内容。同样,接收方接收数据完成后应答OK表示文件内容接收成功。

由此,无论A、B之间传递何种文件,都是通过三次数据传输来完成。A、B之间形成了一个最简单的数据传输规则。双方都按此规则发送、接收数据。A、B之间达成的这个相互遵守的规则即为协议。

这种仅在A、B之间被遵守的协议称之为原始协议

当此协议被更多的人采用,不断的增加、改进、维护、完善。最终形成一个稳定的、完整的文件传输协议,被广泛应用于各种文件传输过程中。该协议就成为一个标准协议

最早的ftp协议就是由此衍生而来。

TCP协议注重数据的传输。http协议着重于数据的解释。

二、典型协议

协议类型

1、应用层

应用层 常见的协议有HTTP协议,FTP协议。

  • HTTP超文本传输协议(Hyper Text Transfer Protocol)是互联网上应用最为广泛的一种网络协议。
  • FTP文件传输协议(File Transfer Protocol)

2、传输层

传输层 常见协议有TCP/UDP协议。

  • TCP 传输控制协议(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
  • UDP 用户数据报协议(User Datagram Protocol)是OSI参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。

3、网络层

网络层 常见协议有IP协议(最常用)、ICMP协议、IGMP协议。

  • IP协议是因特网互联协议(Internet Protocol)
  • ICMP协议是Internet控制报文协议(Internet Control Message Protocol)它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。
  • IGMP协议是 Internet 组管理协议(Internet Group Management Protocol),是因特网协议家族中的一个组播协议。该协议运行在主机和组播路由器之间。

4、链路层(网络接口层)

网络接口层 常见协议有ARP协议、RARP协议。

  • ARP协议:正向地址解析协议(Address Resolution Protocol),通过IP地址寻找对应主机的Mac地址。
  • RARP:反向地址转换协议,通过MAC地址找IP地址。