CS、BS架构和网络通信协议

1. CS架构

CS架构其实在我们身边比比皆是,手机里的app大多都是CS架构,比如腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频。

这里的腾讯视频是客服端client,腾讯也有一个自己的服务端server

这种自己开创一个客服端的方式叫做CS架构。

CS架构的好处是:可以自定义发送数据的格式与方式

2. BS架构

BS架构其实也是CS架构中的一种,只不过需要我们独立开发的客户端变成了浏览器,我们就不需要再去开发客服端了!

BS架构的好处是:省去了开发客户端,都是必须按照浏览器的

3. 网络通信协议

3.1 什么是网络

没有网络的话,如果我需要另一台电脑上的一些小视频、小音频,我就需要拿个U盘跑到那台机器上,把那台机器上的东西拷贝下来,这就有个问题,如果我离那台电脑很远,我就需要耗费很大的精力去到那台电脑旁边。

这样显示是很不方便的,网络的产生就是为了解决上述问题,网络=物流链接介质+互联网通信协议,网络间的通信能够实现跨地域传输数据

3.2 osi的七层协议(重点)

osi的七层分别是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层

一般来说,我们只需要了解应用层、传输层、网络层、数据链路层和物理层的五层结构!

[En]

Generally, we only need to understand the five-layer structure of application layer, transport layer, network layer, data link layer and physical layer!

每一层的协议指的是传输数据的组织格式。

[En]

The protocol of each layer refers to the organizational format in which the data is transmitted.

格式:头部+数据部分

这里其实可以把 数据部分看成是一个 包裹头部当成包裹上的 面单,两台计算机之间的数据传输其实就是封包和拆包的过程。

1.物理层

一组物理层数据称之为:位(Bit)
物理层负责发送电信号0/1
简单的电信号是没有意义的,必须进行分组

[En]

Simple electrical signals are meaningless and must be grouped

2.数据链路层:ethernet以太网协议

数据链路层定义了电信号分组的方式
数据链路层有几个规定:
规定1:一组数据组称之为一个数据帧
规定2:数据帧分为两部分——>头+数据
头部包含了源地址,目标地址,数据类型等等,头部的地址是mac地址
数据包含来自网络层的全部内容。

[En]

The data contains the whole content from the network layer.

规定3:但凡接入互联网的主机必须有一块网卡。每块网卡在出厂前都会烧制好一个全世界独一无二的mac地址
注意:计算机通信基本靠吼,即以太网协议的工作方式是广播

3.网络层:IP协议

网络层是用来划分广播域的
当每个广播域需要连接到外部时,它必须需要一个网关来帮助内部计算机将数据包转发到公共网络。

[En]

Whenever each broadcast domain needs to be connected to the outside, it must need a gateway to help internal computers forward packets to the public network.

该网关使用路由协议与外部世界通信。

[En]

The gateway communicates with the outside world using a routing protocol.

网络层也有几项规定:

1.一组数据称之为一个数据包
2.数据包分为两部分——>头+数据
头部包含:源地址,目标地址,数据类型等等,头部的地址是ip地址
数据包含来自传输层的全部内容。

[En]

The data contains the whole content from the transport layer.

总结:
1.ip地址+mac地址 =》标识世界上独一无二的一台计算机
2.ip地址也可以标识世界上独一无二的计算机
3.ip+(mac)+port 标识世界上独一无二的计算机上的基于网络通信的软件

4.传输层:tcp/udp协议=》基于端口的协议

端口的范围是0-65535,其中0-1023是系统占用端口

4.1 基于tcp通信协议

基于tcp协议通信之前,必须建立一个双向通信的链接,这就需要提供三次握手,建立链接为传输数据做准备,它是一个可靠的传输。

CS、BS架构和网络通信协议

你需要在通信结束时断开链路,并且需要挥手四次。

[En]

You need to disconnect the link at the end of the communication, and you need to wave four times.

CS、BS架构和网络通信协议

CS、BS架构和网络通信协议

4.2 基于udp的通信协议

不需要和服务端建立连接,直接发送数据,所以这种方式是不可靠的,数据容易丢失,一般像广播、直播这样的就是udp

5.应用层

协议可在应用层定制,格式为:头+数据部分

[En]

The protocol can be customized in the application layer in the format: header + data part

报头的长度必须是固定的,因为接收方需要通过报头获取要接收的数据的详细信息。

[En]

The length of the header must be fixed, because the receiver needs to obtain the details of the data to be received through the header.

4.层级之间的流程图

CS、BS架构和网络通信协议

Original: https://www.cnblogs.com/suncolor/p/16613260.html
Author: 等日落
Title: CS、BS架构和网络通信协议

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/498661/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球