首页 > 其他分享 >所有协议集合

所有协议集合

时间:2024-09-23 22:02:57浏览次数:1  
标签:协议 IP 所有 rfc 地址 https 集合 RFC

1.HTTP(超文本传输协议):
官方定义:一种用于分布式、协作式和超媒体信息系统的应用层协议,是万维网数据通信的基础。
用途:主要用于在 Web 浏览器和 Web 服务器之间传输超文本,如网页、图像、视频等资源。
数据结构:请求报文包括请求行、请求头部、空行和请求体;响应报文包括状态行、响应头部、空行和响应体。
学习网站及网址:
“MDN Web Docs”:https://developer.mozilla.org/zh-CN/docs/Web/HTTP 。提供了非常详细的 HTTP 协议介绍、教程和参考资料。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc2616.txt 。可直接查看 HTTP 协议的原始定义文档 RFC 2616。
2.HTTPS(安全超文本传输协议):
官方定义:是以安全为目标的 HTTP 通道,在 HTTP 基础上通过传输层安全(TLS)或安全套接字层(SSL)进行加密。
用途:用于在 Web 浏览器和 Web 服务器之间进行安全的通信,保护数据在传输过程中的机密性和完整性。
数据结构:与 HTTP 类似,在传输之前会对请求和响应消息进行加密处理,还包含一些与加密和认证相关的额外信息。
学习网站及网址:
“SSL.com”:https://www.ssl.com/ 。提供关于 SSL/TLS 协议以及 HTTPS 的详细介绍、技术文档、常见问题解答等。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc2818.txt 。可查看 HTTPS 相关的标准文档。
3.TCP(传输控制协议):
官方定义:一种面向连接的、可靠的、基于字节流的传输层通信协议。
用途:适用于对数据传输可靠性要求高的场景,如网页浏览、文件传输、电子邮件和远程登录等。
数据结构:TCP 报文段头部包括源端口、目的端口、序列号、确认序列号、数据偏移、控制标志、窗口大小、校验和、紧急指针等字段;还有控制缓冲区和套接字数据结构等相关数据结构。
学习网站及网址:
“MDN Web Docs”:https://developer.mozilla.org/zh-CN/docs/Web/API/WindowOrWorkerGlobalScope/fetch 。提供了网络协议知识,包括 TCP 协议的详细介绍、原理、使用方法等。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc793.txt 。可直接查看 TCP 协议的原始定义文档。
4.UDP(用户数据报协议):
官方定义:是一种无连接的传输层协议。
用途:常用于对实时性要求较高、对数据准确性要求相对较低的场景,如实时视频、音频传输、在线游戏等。
数据结构:UDP 数据报包含源端口号、目的端口号、数据长度和校验和等字段。
学习网站及网址:
“MDN Web Docs”:https://developer.mozilla.org/zh-CN/docs/Web/API/DatagramSocket 。对 UDP 协议的特点、用法等有详细说明。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc768.txt 。可查看 UDP 协议的原始定义文档。
5.IP(网际互连协议):
官方定义:是 TCP/IP 协议体系中的网络互联层协议,主要作用是将不同类型的物理网络互联在一起,详细规定了网络中的计算机在通信时应该遵循的全部规则。
用途:负责在不同网络之间寻址和路由数据包,实现网络间的通信。
数据结构:IP 数据包由 IP 头部和数据部分组成,IP 头部包含源 IP 地址、目的 IP 地址、协议类型、生存时间、头部校验和等字段。
学习网站及网址:
“MDN Web Docs”:https://developer.mozilla.org/zh-CN/docs/Web/API/XMLHttpRequest 。有关于 IP 协议的基本概念和作用的介绍。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc791.txt 。可获取 IP 协议的原始定义文档。
6.SMTP(简单邮件传输协议):
官方定义:是一种用于在网络系统间传输电子邮件的协议,建立在 TCP 之上。
用途:负责将电子邮件从发送方的邮件服务器发送到接收方的邮件服务器。
数据结构:SMTP 协议的通信过程包括一系列的命令和响应,如 HELO、MAIL FROM、RCPT TO、DATA 等命令,以及相应的响应码。邮件的内容格式包括邮件头和邮件体。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc5321.txt 。RFC 5321 是 SMTP 协议的最新标准文档,详细规定了 SMTP 协议的技术细节和操作规范。
“Wikipedia - Simple Mail Transfer Protocol”:https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol 。维基百科上对 SMTP 协议的介绍,包括其历史、工作原理、命令等。
7.FTP(文件传输协议):
官方定义:一种用于在网络上两台计算机之间传输文件的协议,运行在 TCP 之上。
用途:允许用户在客户端和服务器之间上传和下载文件,支持目录和文件的访问、管理等操作。
数据结构:FTP 通信过程中会有控制连接和数据连接,控制连接用于传输命令和响应,数据连接用于传输文件数据。
学习网站及网址:
“Wikipedia - File Transfer Protocol”:https://en.wikipedia.org/wiki/File_Transfer_Protocol 。维基百科上的 FTP 页面,对 FTP 协议的历史、工作原理、命令集、安全问题等方面进行了详细的介绍。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc959.txt 。可查看 FTP 协议的原始定义文档。
8.Telnet(远程登录协议):
官方定义:是 TCP/IP 中的一种应用协议,为终端仿真提供支持。
用途:允许用户通过网络远程登录到其他计算机系统,在远程计算机上执行命令和操作。
数据结构:Telnet 协议的数据主要是用户输入的命令和远程计算机返回的响应,通信过程中的数据格式是基于文本的。
学习网站及网址:
“Wikipedia - Telnet”:https://en.wikipedia.org/wiki/Telnet 。维基百科上的 Telnet 页面,介绍了 Telnet 协议的发展历程、工作原理、安全问题等方面的信息。
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc854.txt 。可查看 Telnet 协议的原始定义文档。
9.DNS(域名系统协议):
官方定义:是互联网的一项服务,用于将域名解析为 IP 地址,以便用户可以通过易于记忆的域名访问网站,而不是难以记住的数字 IP 地址。
用途:在互联网中,当用户在浏览器中输入域名时,DNS 协议会将该域名转换为对应的 IP 地址,使得计算机能够找到并访问目标服务器。例如,当用户输入 “www.example.com” 时,DNS 会将其解析为对应的 IP 地址,如 “192.0.2.1”,这样浏览器才能与该服务器建立连接并获取网页内容。
数据结构:DNS 消息包含头部和正文部分。头部包含一些标志位、查询 ID、问题数量等信息;正文部分则包含查询的域名、查询类型(如 A 记录表示将域名解析为 IPv4 地址,AAAA 记录表示解析为 IPv6 地址等)、响应的 IP 地址等。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc1034.txt 。RFC 1034 和 RFC 1035 是 DNS 协议的官方定义文档,详细描述了 DNS 的技术规范和工作原理。
“DNS 原理与实践 - 知乎专栏”:https://zhuanlan.zhihu.com/p/349422556 。知乎专栏上有一些关于 DNS 原理、解析过程、常见问题等方面的详细介绍和案例分析。
10.ICMP(Internet 控制报文协议):
官方定义:是 TCP/IP 协议族的一个子协议,用于在 IP 主机、路由器之间传递控制消息,如错误报告、网络状态信息等。
用途:主要用于报告 IP 数据报在传输过程中发生的错误,以及进行网络诊断和控制。例如,当 IP 数据报无法到达目的地、TTL(生存时间)超时、数据报参数错误等情况发生时,路由器或目的主机就会发送 ICMP 报文给源主机,告知错误信息。此外,ICMP 还可以用于一些网络探测工具,如 Ping 和 Traceroute。
数据结构:ICMP 报文由头部和数据部分组成。头部包含类型、代码、校验和等字段,用于标识报文的类型和具体的错误信息;数据部分则根据不同的类型和代码,可能包含一些额外的信息,如 IP 数据报的首部等。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc792.txt 。RFC 792 是 ICMP 协议的官方标准文档,对 ICMP 的报文格式、类型、代码、处理规则等进行了详细的定义。
“ICMP 协议详解 - 51CTO 博客”:https://blog.51cto.com/u_15077562/2860473 。51CTO 博客上的这篇文章对 ICMP 协议的原理、工作过程、常见应用等进行了详细的讲解和分析。
11.ARP(地址解析协议):
官方定义:是将 IP 地址映射到物理地址(MAC 地址)的一种协议,在以太网等局域网中使用。
用途:在局域网中,当一台主机想要向另一台主机发送数据时,需要知道对方的 MAC 地址。ARP 协议就是用于在已知对方 IP 地址的情况下,获取对方的 MAC 地址。例如,主机 A 想要向主机 B 发送数据,但是只知道主机 B 的 IP 地址,此时主机 A 会发送一个 ARP 请求广播,询问网络中谁的 IP 地址是主机 B 的 IP 地址,主机 B 收到请求后会回复自己的 MAC 地址,这样主机 A 就可以使用该 MAC 地址向主机 B 发送数据。
数据结构:ARP 报文分为请求报文和响应报文两种。报文包含硬件类型(如以太网)、协议类型(如 IP)、硬件地址长度、协议地址长度、操作类型(请求或响应)、发送方的 MAC 地址、发送方的 IP 地址、目标的 MAC 地址(请求时未知,响应时填写)、目标的 IP 地址等字段。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc826.txt 。RFC 826 是 ARP 协议的标准文档,详细规定了 ARP 报文的格式、操作流程等。
“ARP 协议原理与实战 - 腾讯云开发者社区”:https://cloud.tencent.com/developer/article/1773018 。腾讯云开发者社区的这篇文章结合实际案例,详细介绍了 ARP 协议的工作原理、ARP 欺骗等相关知识。
12.RARP(逆向地址解析协议)
官方定义:与 ARP 协议相反,RARP 是将物理地址(MAC 地址)映射到 IP 地址的一种协议。
用途:主要用于无盘工作站等设备在启动时获取自己的 IP 地址。因为无盘工作站没有硬盘,无法存储 IP 地址等配置信息,所以在启动时需要通过 RARP 协议向 RARP 服务器请求自己的 IP 地址,RARP 服务器根据其 MAC 地址查询对应的 IP 地址并返回给无盘工作站。
数据结构:RARP 报文的格式与 ARP 报文类似,包含硬件类型、协议类型、硬件地址长度、协议地址长度、操作类型(RARP 的操作类型与 ARP 不同)、发送方的 MAC 地址、目标的 IP 地址(请求时未知,响应时填写)等字段。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc903.txt 。RFC 903 是 RARP 协议的官方定义文档。
“RARP 协议的工作原理及应用场景 - CSDN 博客”:https://blog.csdn.net/qq_36330643/article/details/79108807 。CSDN 博客上的这篇文章对 RARP 协议的原理、应用场景等进行了介绍。
13.IGMP(Internet 组管理协议):
官方定义:是 Internet 协议家族中的一个组播协议,运行在主机和组播路由器之间,用于管理 IP 组播通信。
用途:在 IP 组播中,多个接收者可以同时接收来自一个发送者的数据包。IGMP 协议用于主机加入或离开组播组,以及组播路由器管理组播组成员关系。例如,当一台主机想要接收某个组播组的数据包时,它会向本地的组播路由器发送 IGMP 加入消息,组播路由器收到消息后,会将该主机加入到相应的组播组中,并在后续的组播数据传输中,将数据包转发给该组的成员。
数据结构:IGMP 报文包含版本号、类型、校验和、组地址等字段。类型字段用于表示报文的类型,如成员查询、成员报告、离开组等;组地址字段则表示组播组的 IP 地址。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc1112.txt 。RFC 1112 是 IGMP 协议的标准文档,详细描述了 IGMP 的协议规范和操作流程。
“IGMP 协议详解 - 简书”:https://www.jianshu.com/p/677c6d89763c 。简书上的这篇文章对 IGMP 协议的基本概念、工作原理、报文格式等进行了详细的解读。
14.SNMP(简单网络管理协议):
官方定义:是 TCP/IP 协议中的一部分,为本地和远端的网络设备管理提供了一个标准化途径,是分布式环境中的集中化管理的重要组成部分。
用途:用于网络管理员对网络中的设备进行监控和管理,如获取设备的状态信息、配置设备参数、接收设备的告警信息等。例如,网络管理员可以通过 SNMP 协议获取路由器的接口状态、CPU 利用率、内存使用情况等信息,以便及时发现和解决网络中的问题。
数据结构:SNMP 协议使用管理信息库(MIB)来定义被管理设备的信息结构,SNMP 报文包含版本号、团体名、PDU(协议数据单元)等字段。PDU 又分为 GetRequest、GetNextRequest、SetRequest、GetResponse、Trap 等类型,分别用于获取信息、获取下一个信息、设置信息、响应请求、发送告警等操作。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc1157.txt 。RFC 1157 是 SNMP 协议的第一个版本的标准文档,后续还有 RFC 1901、RFC 1905 等对其进行了更新和扩展。
“SNMP 协议入门教程 - 华为技术支持”:https://support.huawei.com/enterprise/zh/doc/EDOC1100057476 。华为技术支持网站上的这篇教程对 SNMP 协议的基本概念、工作原理、配置方法等进行了详细的介绍,适合初学者学习。
15.TLS/SSL(传输层安全协议 / 安全套接层协议):
官方定义:是为网络连接提供加密和身份认证的安全协议,位于传输层和应用层之间。
用途:用于保护在网络上传输的敏感信息,如信用卡号、密码、个人信息等,防止被窃听、篡改和伪造。例如,在进行网上银行转账、登录电子邮箱等操作时,浏览器和服务器之间会使用 TLS/SSL 协议进行加密通信,确保数据的安全性。
数据结构:TLS/SSL 协议的握手过程涉及多个报文的交互,包括 Client Hello、Server Hello、Certificate、Server Key Exchange、Client Key Exchange、Change Cipher Spec、Finished 等报文。这些报文包含了协议版本号、加密算法、随机数、证书等信息,用于建立安全连接和协商加密参数。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc5246.txt 。RFC 5246 是 TLS 协议的标准文档,详细描述了 TLS 协议的握手过程、加密算法、报文格式等。
“SSL/TLS 协议详解 - 腾讯云开发者社区”:https://cloud.tencent.com/developer/article/1427057 。腾讯云开发者社区的这篇文章对 SSL/TLS 协议的原理、工作流程、安全机制等进行了深入的分析和讲解。
16.DHCP(动态主机配置协议):
官方定义:是在 TCP/IP 网络上使客户机获得配置信息的协议,它基于 BootP 协议,并在其基础上添加了自动分配可用网络地址等功能。
用途:用于自动为网络中的主机分配 IP 地址、子网掩码、默认网关、DNS 服务器等网络配置信息,减少网络管理员的手动配置工作量,提高网络配置的效率和准确性。例如,当一台新的计算机接入网络时,它会向 DHCP 服务器发送请求,DHCP 服务器会根据其配置策略为该计算机分配一个可用的 IP 地址,并将其他相关的网络配置信息一起返回给计算机,使计算机能够快速地接入网络。
数据结构:DHCP 报文包含消息类型(如 Discover、Offer、Request、ACK 等)、客户端 MAC 地址、服务器 IP 地址、分配的 IP 地址、子网掩码、默认网关、租约时间等字段。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc2131.txt 。RFC 2131 是 DHCP 协议的标准文档,对 DHCP 的工作原理、报文格式、配置选项等进行了详细的规定。
“DHCP 协议原理与配置 - 51CTO 学院”:https://edu.51cto.com/course/13438.html 。51CTO 学院的这门课程对 DHCP 协议的原理、配置方法、常见问题等进行了系统的讲解和演示。
17.NAT(网络地址转换协议):
官方定义:是一种将私有(保留)地址转换为合法 IP 地址的技术,属于接入广域网(WAN)的技术。
用途:在 IPv4 地址资源有限的情况下,NAT 技术可以使多个内部网络设备共享一个或多个公共 IP 地址访问互联网,提高 IP 地址的利用率,同时也可以隐藏内部网络的结构和 IP 地址,增强网络的安全性。例如,一个公司内部的局域网中,所有的计算机都使用私有 IP 地址,当这些计算机需要访问互联网时,NAT 设备会将它们的私有 IP 地址转换为一个公共 IP 地址,然后与互联网上的服务器进行通信。
数据结构:NAT 设备会维护一个地址转换表,记录内部私有 IP 地址与外部公共 IP 地址的映射关系。当内部设备发送数据包时,NAT 设备会将数据包的源 IP 地址替换为公共 IP 地址,并记录下转换信息;当收到外部服务器返回的数据包时,NAT 设备会根据地址转换表将目的 IP 地址替换为内部设备的私有 IP 地址,然后将数据包转发给内部设备。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc3022.txt 。RFC 3022 是 NAT 协议的相关标准文档,对 NAT 的技术原理、实现方式、应用场景等进行了描述。
“NAT 技术原理与实战 - 阿里云开发者社区”:https://developer.aliyun.com/article/747237 。阿里云开发者社区的这篇文章结合实际案例,详细介绍了 NAT 技术的原理、配置方法、常见问题及解决方案。
18.BOOTP(引导程序协议):
官方定义:是一种用于无盘工作站从服务器获取启动信息的网络协议。
用途:主要用于无盘工作站在启动时从服务器获取 IP 地址、子网掩码、默认网关、服务器 IP 地址等启动信息,以便能够正常启动并连接到网络。例如,在一些企业网络环境中,为了降低成本和管理难度,可能会使用无盘工作站,这些工作站在启动时需要通过 BOOTP 协议从服务器获取启动信息,然后才能正常运行。
数据结构:BOOTP 报文包含操作码、硬件类型、硬件地址长度、跳数、事务 ID、秒数、未使用、客户端 IP 地址、你的 IP 地址、服务器 IP 地址、网关 IP 地址、客户端硬件地址、服务器主机名、启动文件名等字段。
学习网站及网址:
“RFC 文档”:https://www.rfc-editor.org/rfc/rfc951.txt 。RFC 951 是 BOOTP 协议的官方定义文档。
“BOOTP 协议详解 - CSDN 博客”:https://blog.csdn.net/qq_34801169/article/details/80555827 。CSDN 博客上的这篇文章对 BOOTP 协议的原理、报文格式、应用场景等进行了介绍

标签:协议,IP,所有,rfc,地址,https,集合,RFC
From: https://www.cnblogs.com/candy7258/p/18427989

相关文章

  • 计算机网络与协议学习路线图
    基础理论学习阶段计算机网络概述:学习内容:了解计算机网络的定义、发展历程、功能、分类等基本概念,建立对计算机网络的整体认知。比如知道什么是局域网、广域网、城域网,以及它们之间的区别和应用场景。学习时间:建议花费1-2周。网络体系结构:学习内容:深入学习OSI七层模型(物理......
  • java 如何实现判断一个对象所有的属性是否为空
     能适配所有类型的:Personperson=newPerson();person.setId(0);//---truePersonperson=null;//---truePersonperson=newPerson();person.setName("xxx");//---falsePersonperson=newPers......
  • RS-485通信与Modbus协议概念介绍
    RS485通信1、实际上在RS485之前RS232就已经诞生,但是RS232也有不足:1)接口的信号电平值较高,达到十几伏,容易损坏接口电路的芯片,而且和TTL电平不兼容,因此和单片机电路接起来的话必须加转换电路。2)接口使用的信号线与其他设备形成共地模式的通信,这种共地模式传输容易产生干扰,并且......
  • java集合知识整理1:Java集合概览
    目录Java集合概览List接口set接口Queue接口Map接口其他相关接口和类Java集合概览java集合也叫做容器,主要由两大接口派生而来:一个是Collection接口,主要用于存放单一元素,另一个是Map接口,主要存放键值对。对于Collection接口,下面又有三个主要的子接口:List、Set、Que......
  • ①原装进口芯片一主多从RS485通讯转换器从站转地址波特率转校验位转寄存器转停止位mod
    一主多从RS485通讯转换器从站转地址波特率modbus协议转换中继器型号:485一主一从 MS-M1101      485一主二从 MS-M1201      485一主三从 MS-M1301      485一主四从 MS-M1401产品概述MS-M1X01系列一主多从RS485通讯转换器......
  • 带你0到1之QT编程:十七、Http协议实战,实现一个简单服务器和一个客户端进行http协议通信
    此为QT编程的第十七谈!关注我,带你快速学习QT编程的学习路线!每一篇的技术点都是很很重要!很重要!很重要!但不冗余!我们通常采取总-分-总和生活化的讲解方式来阐述一个知识点!码农不易,各位学者学到东西请点赞支持支持!开始部分:总:此次实战主要是模拟一个http协议进行网络通信的一......
  • 带你0到1之QT编程:十八、最简单之TCP协议工作原理及实战编程
    此为QT编程的第十八谈!关注我,带你快速学习QT编程的学习路线!每一篇的技术点都是很很重要!很重要!很重要!但不冗余!我们通常采取总-分-总和生活化的讲解方式来阐述一个知识点!码农不易,各位学者学到东西请点赞支持支持!开始部分:总:此次实战主要是实现一个客户端,一个服务端,来了解TC......
  • 邮件发送基础:深入SMTP协议、配置邮件服务器及Python实现
    目录引言SMTP协议基础定义与功能工作原理特性与优势邮件服务器配置第三方邮件服务商配置自建邮件服务器配置使用Python发送邮件安装smtplib和email模块发送简单纯文本邮件发送HTML格式邮件发送带附件的邮件完整示例:发送带附件的HTML邮件注意事项总结引言......
  • system.text.Json 针对继承多态类型的集合,使用自定义Converter,进行json序列化
    测试类:[JsonConverter(typeof(PersonConverter))]publicclassPerson{publicstringFirstName{get;set;}publicstringLastName{get;set;}}[JsonConverter(typeof(PersonConverter))]publicclassEmployee:Person{pub......
  • 不小心删除了一条短信,或者丢失了所有短信?下面介绍几个方法。
    短信通常都是非正式和无关紧要的,但短信中可能包含非常重要的信息。因此,如果您删除了一些短信以清理iPhone上的空间,却意外删除了一条重要短信,或者清空了iPhone并发现恢复时短信已不复存在,请不要惊慌。您有机会在iPhone上恢复已删除的短信。 这个过程有六种可能的途径,我......