socket、websocket、rpc、restful、tcp、udp、tcp/ip、osi七层协议

socket、websocket、rpc、restful、tcp、udp、tcp/ip、osi七层协议

对于以上这些名词,你是否感到熟悉呢?他们都是干什么有的,有哪些异同呢?

需要弄清这些东西,要先从七层网络协议开始说起。

1.网络七层协议

osi是一个开放性的通信系统互连参考模型。

为使不同计算机厂家的计算机能够互相通信,以便在更大的范围内建立计算机网络,有必要建立一个国际范围的网络体系结构标准。国际标准化组织ISO 于1981年正式推荐了一个网络系统结构----七层参考模型,叫做开放系统互连模型(Open System Interconnection,OSI)。由于这个标准模型的建立,使得各种计算机网络向它靠拢,大大推动了网络通信的发展。

它们由低到高分别是物理层(PH)、数据链路层(DL)、网络层(N)、传输层(T)、会话层(S)、表示层§、应用层(A)。每层完成一定的功能,每层都直接为其上层提供服务,并且所有层次都互相支持。第四层到第七层主要负责互操作性,而一层到三层则用于创造两个网络设备间的物理连接。

在这里插入图片描述

  • 物理层 建立、维护、断开物理连接。(由底层网络定义协议)
  • 数据链路层 建立逻辑连接、进行硬件地址寻址、差错校验等功能。(由底层网络定义协议)
  • 网络层 进行逻辑地址寻址,实现不同网络之间的路径选择。
    常见协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP
  • 传输层 定义传输数据的协议端口号,以及流控和差错校验。
    常见协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
  • 会话层 建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
    对应主机进程,指本地主机与远程主机正在进行的会话。
  • 表示层 数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
    常见格式有,JPEG、ASCll、DECOIC、加密格式等
  • 应用层 网络服务与最终用户的一个接口。
    常见协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP

通过对七层网络协议的了解,IP协议对应网络层,TCP协议对应于传输层,而http协议对应于应用层,从本质上来说,三者是不同层面的东西,如果打个比方的话,IP就像高速公路,TCP就如同卡车,http就如同货物,货物要装载在卡车并通过高速公路才能从一个地点送到另一个地点。

弄清楚这些后,是不是对以上的名词有了

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Restful: Restful是一种软件架构风格,用于构建可伸缩的网络应用程序。它基于HTTP协议,通过使用统一的接口和资源标识符(URI)来进行通信。Restful架构的核心原则是无状态、可缓存、客户端-服务器分离和统一接口。它使用HTTP方法(GET、POST、PUT、DELETE等)来操作资源,并使用JSON或XML等格式来传输数据。 GraphQL: GraphQL是一种用于API开发的查询语言和运行时环境。它提供了一种灵活的方式来定义和查询数据模型,使客户端能够精确地获取所需的数据,避免了过度获取或不足获取的问题。GraphQL使用类型系统来描述数据模型,并通过查询语言来定义客户端请求的数据结构。与传统的RESTful API相比,GraphQL具有更高的灵活性和效率。 Soap: SOAP(Simple Object Access Protocol)是一种基于XML的通信协议,用于在网络上交换结构化信息。它定义了一种标准的消息格式和通信规范,使得不同平台和编程语言之间可以进行远程调用和消息传递。SOAP通常使用HTTP作为传输协议,但也可以使用其他协议如SMTP、FTP等。 Dubbo: Dubbo是一个高性能的分布式服务框架,用于构建大规模分布式系统。它提供了服务注册、发现、调用和负载均衡等功能,使得分布式系统的开发和管理更加简单。Dubbo支持多种通信协议和序列化方式,并提供了可扩展的插件机制,可以与其他框架和中间件进行集成。 RPC(Remote Procedure Call): RPC是一种远程过程调用协议,用于实现分布式系统中的进程间通信。它允许一个进程调用另一个进程的函数或方法,就像调用本地函数一样。RPC隐藏了底层通信细节,使得分布式系统的开发更加简单。常见的RPC框架有gRPC、Thrift、Apache Avro等。 WebSocket: WebSocket是一种在单个TCP连接上进行全双工通信的协议。它提供了实时的、双向的数据传输能力,使得服务器可以主动向客户端推送数据,而不需要客户端发起请求。WebSocket通常用于实时聊天、实时数据更新等场景,与传统的HTTP请求-响应模式相比,具有更低的延迟和更高的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值