《JavaEE初阶》计算机网络之网络原理(应用层)

本文介绍了应用层在计算机网络中的重要性,特别是对于程序员在开发中的作用。自定义应用层协议是解决前后端交互问题的关键,涉及到数据传输格式的选择,如分隔符、固定长度、XML和JSON等。此外,文中还提及了二进制数据格式如protobuf和thrift,它们在效率和带宽占用上具有优势。最后,文章提到了HTTP等现成的应用层协议。
摘要由CSDN通过智能技术生成

《JavaEE初阶》计算机网络之网络原理(应用层)

前言:

本章主要讲解计算机网络原理中的应用层概念以及如何自定义应用层协议.

应用层:

应用层对于我们程序员来说,是开发中最经常打交道的一层.

虽然应用层中有许多现成的协议,但是实际开发中经常是需要自定义应用层协议的.

自定义应用层协议:

当一个需求需要多个组合作开发时,尤其是需要前后端的交互时候,就需要约定好前后端之间的交互接口.否则交互过程极易发生错误.并且极大降低开发效率.

A B组协同开发,A要给B传输的数据按什么样的格式来传输,B给A响应的数据按什么样的格式来响应.
就需要程序员来决定格式.
这个过程就是自定义协议(应用层协议)

如何进行自定义应用层协议

  • 交互过程传输的信息有什么

    充分了解数据的类型与数据的量级

  • 对信息进行格式组织:

    通过约束信息格式,来提高开发效率.

自定义应用层协议的格式选择:

  1. 直接使用简单分隔符:(; \n 等等)

在这里插入图片描述

缺点也十分明显,过于粗暴,无法准确表达信息中有哪类信息.

  1. 使用固定的长度来约束信息.

在这里插入图片描述

  1. 使用方式一与方式二混搭.

  2. 使用XML的格式约定数据:

    在这里插入图片描述

    对xml的介绍:
    xml的格式与html极为类似,都是通过标签的方式来整理数据,(开始标签与结束标签)
    通过标签整理出"树形结构"
    xml不仅仅用来在网络传输进行数据的组织,更用来自定义协议格式,在一定的场合下,也作为一些配置文件.
    围绕着xml也有很多成熟的第三方库来整理格式.
    但是xml的使用已经大不如前了.
    
  3. 使用json的格式约定数据:

在这里插入图片描述

   对json的介绍:
   json使用{}来包含键值对,键值对之间用逗号分割,每个键值对的键和值之间,使用冒号分割.
   json要求键的部分必须是字符串,对于值的部分,可以是数字,也可以是字符串.
   json还可以使用数组[]来包含信息,也可以包含另一个json.
   json是当下用来自定义协议非常常用的格式.
   也有很多第三方库,用来操作json数据.
  1. 使用二进制数据来组织格式:(protobuffer,thrift)

    xml和json属于文本格式
    优势:可读性高.
    劣势:效率低,占用的带宽更多.
    protobuffer,thrift
    优势: 占用带宽少,效率高.
    劣势: 可读性低.
    

应用层的现成协议.

应用层不仅仅可以自定义协议,也有一些现成的协议可以直接使用,其中最著名的就是HTTP协议.(后续章节介绍.)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小连~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值