导读:
本系列文章从RPC产生的历史背景开始讲解,涉及RPC核心原理、RPC实现、JSF的实现等,通过图文类比的方式剖析它的内部世界,让大家对RPC的设计思想有一个宏观的认识 。
作者:王禹展 京东健康网络协议
为什么需要网络协议?
网络协议是为计算机网络中进行数据交换而建立的规则、标准或约定的集合 。
网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识 。为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符 。就像我们说话用某种语言一样,在网络上的各台计算机之间也有一种语言,这就是网络协议,不同的计算机之间必须使用相同的网络协议才能进行通信 。
一次请求都需要用到那些协议?
1.要传输数据,首先如何知道对应的机器的地址?通过IP可以确认具体的机器(网络层的IP层协议) 。
2.找到目标机器后,需要知道该机器上那个程序接受本次请求?通过端口就能确定具体的程序(传输层的TCP层协议) 。
3.确定完程序后,怎么区分不同的请求,每一个请求如何关联对应的响应呢?(应用层的RPC协议)通过消息id区分 。
4.以上这些最后是由物理层的光缆、电缆、无线信道等支持的,如何控制信号在物理层之上的传递,还需要PPP协议、ARP协议等 。
不同层的协议简介
文章插图
应用层的协议
HTTP协议
超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上 。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应 。
HTTPS协议
全称:Hyper Text Transfer Protocol over SecureSocket Layer,是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL 。HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间) 。这个系统提供了身份验证与加密通讯方法 。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面 。
RPC协议
一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议 。
RTMP协议
全称:Real Time Messaging Protocol(实时消息传输协议) 。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种 。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信 。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/red5等 。RTMP与HTTP一样,都属于TCP/IP四层模型的应用层 。
P2P协议
点对点技术又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上 。P2P网络通常用于通过Ad Hoc连接来连接节点 。这类网络可以用于多种用途,各种档案分享软件已经得到了广泛的使用 。P2P技术也被使用在类似VoIP等实时媒体业务的数据通信中 。
DNS协议
DNS是一种可以将域名和IP地址相互映射的以层次结构分布的数据库系统 。DNS系统采用递归查询请求的方式来响应用户的查询,为互联网的运行提供关键性的基础服务 。目前绝大多数的防火墙和网络都会开放DNS服务,DNS数据包不会被拦截,因此可以基于DNS协议建立隐蔽信道,从而顺利穿过防火墙,在客户端和服务器之间传输数据 。
GTP协议
全称:GPRS隧道协议(GPRSTunnelingProtocol),可以分解成三种独立的协议,GTP-C(控制面)、GTP-U(用户面)及GTP'(计费传输) 。GTP-C用于GPRS核心网络中,用于不同网络节点之间的信令数据 。GTP-U 用于承载用户数据 。GTP可以用在UDP或TCP上,GTP v1仅用于UDP上 。用于 GPRS(2.5代通信技术)、UMTS(3G移动通信技术)、LTE(3G与4G技术之间的过渡) 和 5G 网络 。
DHCP协议
全称:Dynamic Host Configuration Protocol(动态主机配置协议),通常被应用在大型的局域网络环境中,主要作用是集中地管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率 。
推荐阅读
- Android系统服务DropBoxManagerService详解与实践应用
- Go、Spring Boot、 Elixir 以及Helidon 微服务框架性能测试对比
- 招聘|学历成孔乙己的“长衫”?酒店到某211高校招服务员,破大防了
- 求职|湖北广播电视台后勤服务中心招聘7人
- 苏果供应商b2b服务系统_什么是B2B数字化供应链平台?
- 人工智能热潮导致算力紧张,微软推新服务器租赁计划
- 选择美国服务器为什么推荐CN2线路?
- 香港BGP服务器丢包率高与什么有关?
- 明星|女明星带货翻车,收20万服务费仅成交278元,不退钱遭起诉
- ipv6dns服务器?5-ipv6服务器之-dns?