首页 > 编程语言 >网络编程

网络编程

时间:2022-11-15 17:22:35浏览次数:54  
标签:架构 计算机 七层 编程 网络 OSI 客户端

目录

一.软件开发架构

1.C/S架构

Client:客户端
Server:服务端
我们使用计算机下载下来的一个个app本质是各大互联网公司的客户端软件
通过这些客户端软件我们就可以体验到各个互联网公司给我们提供的服务
eg:
下载淘宝客户端 打开 体验淘宝服务端提供的购物服务
下载抖音客户端 打开 体验抖音服务端提供的视频服务
ps:一般情况下客户端与服务端交互需要互联网但是有些不需要(因为客户端和服务端都在一台计算机上)

​ 客户端:即将要去消费的客人

​ 服务端:给客人提供服务的店

​ 作为服务端必备的多个条件

​ 1.24小时不间断提供服务

​ 2.固定的地址

​ 3.能够服务多个客人(高并发)

2.B/S架构

Browser:浏览器

Server:服务器/端

​ 浏览器可以充当所有服务端的客户端

​ ps: B/S架构本质还是C/S架构

C/S架构

​ 优势:不同公司的客户端有不同的公司独立开发 可以高度定制化客户端功能

​ 劣势:需要下载才能使用,需要占用一定的内存空间

B/S架构

​ 优势:不用下载直接访问

​ 劣势:无法高度定制化 并且需要遵守很多规则

二.架构总结

ATM:三层架构

选课系统:三层架构

本质也属于软件开发架构的范畴

软件设计的大方向>>>:统一接口

​ 微信小程序

​ 支付宝小程序

三.网络编程前戏

1.什么是网络编程

基于网格编写代码 能够实现数据的远程交互

2.学习网络编程的目的

能够开发C/S架构的软件

3.网络编程的起源

最早起源于美国军事领域

​ 想实现计算机之间数据的交互

​ 最早的时候只能用硬盘拷贝

​ 之后发明了网格编程

4.网络编程必备条件

数据的远程交互

​ 1.早期的电话

​ 电话线

​ 2.早期的大屁股电脑

​ 网线

​ 3.笔记本电脑、移动电话

​ 网卡

ps:实现数据的远程交互必备的基础条件是物理连接介质

四.OSI七层协议

1.引入:

OSI七层协议:规定了所有的计算机在远程数据交互的时候必须经过相同的处理流程、在制造过程中必须拥有相同的功能硬件

2.七层协议详细

应用层

表示层

会话层

传输层

网络层

数据链路层

物理连接层

ps:

​ 记忆方法:应、表、会、传、网、数、物

常见的是整合之后后五层或者四层

五层:

​ 应用层、传输层、网络层、数据链路层、物理连接层

四层:

​ 应用层、传输层、网络层、网络接口层

接收网络消息 数据由下往上传递

发送网络消息 数据由上往下传递

五.各种重点协议

1.OSI七层协议之物理连接层

主要用于确保计算机之间的物理连接介质 接收数据(bytes类型、二进制)

2.OSI七层协议之数据链路层

1.规定了电信号的分组方式

2.以太网协议

​ 规定了计算机在出厂的时候都必须有一块网卡 网卡上有一串数字

​ 该数字相当于是计算机的身份证号码是独一无二的

​ 该数字的特征:12位16进制数据

​ 前6位产商编号 后六位流水线号

​ 该数字也称之为:以太网地址/MAC地址

3.网络相关专业名词

计算机之间要想实现数据交互必须要“连接”到一起

1.交换机

能够将所有接入交换机的计算机彼此互联起来

2.广播

首次查找计入同一个交换机的其他计算机,需要朝交换机里面吼一嗓子

3.单播

首次被查找的计算机回应查找它的计算机,并附带自己的mac地址

4.广播风暴

接入同一台交换机的多台计算机同时发广播

5.局域网

可以简单的理解为有单个交换机组成的网络

在局域网内可以直接使用mac地址通信

6.广域网

可以简单的理解为范围更大的局域网

7.互联网

由所有的局域网、广域网连接到一起形成的网络

8.路由器

不同的局域网计算机之间是无法直接实现数据交互的,需要路由器连接

4.OSI七层协议之网络层

IP协议:规定了所有接入互联网的计算机都必须有一个IP地址 类似于身份证号

​ mac地址是物理地址可以看成永远无法修改

​ IP地址是动态分配的,不同的场所IP是不同的

IP地址特征:

​ IPV4:点分十进制

​ 0.0.0.0

​ 255.255.255.255

​ IPV6:能够给地球上每一粒沙分一个IP地址

​ IP地址可以跨局域网传输

ps:IP地址可以用来标识全世界独一无二的一台计算机

5.OSI七层协议之传输层

PORT协议(端口协议)

用来标识一台计算机上面的某一个应用程序

范围:0-65535

​ 特征:动态分配(洗浴中心号码牌)

建议:

​ 0--1024 系统默认需要使用

​ 1024--8000 常见软件的端口号

​ 8000之后的是我们建议使用的

URL:

统一资源定位符(网址)

网址本质是由IP和PORT组成的!!!

IP+PORT:

能够定位全世界独一无二的一台计算机上面的某一个应用程序

域名解析:

将网址解析成IP+PORT

我们之所以不直接使用IP+PORT的原因是太难记 所以发明了域名(网址)

标签:架构,计算机,七层,编程,网络,OSI,客户端
From: https://www.cnblogs.com/LZXSDM/p/16893116.html

相关文章

  • 焦点科技编程挑战赛2022题解
    比赛说明:比赛在四个学校开展,南理南航南农和矿大。题目查找文本差异要求origin和dest中分别包含1000w+条数据dest对数据进行了打乱操作,即origin和dest中相同数据行的......
  • Python基础之网络编程:1、C/S架构和B/S架构
    目录软件开发架构一、C/S架构二、B/S架构三、本质和区别软件开发架构规定了程序的请求逻辑、功能分块一、C/S架构c/s架构的组成:Client(客户端),Server(服务端)Client(客......
  • Python基础之网络编程:2、OSI协议之七层协议
    目录Python基础之网络编程一、网络编程前戏二、OSI七层协议简介:1、物理连接层2、数据链路层网络相关专业名词3、网络层4、传输层Python基础之网络编程一、网络编程前戏1......
  • 计算机网路编程理论
    计算机网路编程理论针对软件开发,目前所有市面上的主流软件,都基本上会使用网络进行通信,传输各种数据,作为软件开发人员,掌握网络编程理论和了解网络编程开发架构是必须的。......
  • 基于粒子群优化深度置信网络的分类预测(matlab)
    1.深度置信网络(DBN)DBN由一层BP神经网络和若干层RBM栈式叠加而成。最顶层的softmax回归层作为标签层输出分类识别的结果,其余层完成特征提取。DBN的学习训练过程......
  • 网络编程基础
    网络编程基础软件开发架构软件开发结构:程序员在编写软件时候应该遵循的架构设计规定了程序的请求逻辑,功能划分模块等等1.C/S架构client:客户端Server:服务端'''......
  • 基于粒子群优化深度置信网络的分类预测
    ​决策树原理        决策树通过把样本实例从根节点排列到某个叶子节点来对其进行分类。树上的每个非叶子节点代表对一个属性取值的测试,其分支就代表测试的每个结......
  • 网络并发1
    今日内容总结软件开发架构规定了程序的请求逻辑、功能模块1.C/S架构 Client:客户端 Server:服务端"""我们使用计算机下载下来的一个个app本质是各大互联网公司的客......
  • 网络编程前戏
    今日内容概要软件开发架构架构发展趋势网络编程前戏OSI七层协议各种重点协议今日内容详细软件开发架构规定了程序的请求逻辑、功能分块1.C/S架构 Client:......
  • 网络编程与OSI模型
    目录一、网络编程简介1.什么是网络编程2.学习网络编程的目的3.网络编程的发展史4.网络编程必备条件二、OSI七层协议模型简介0.操作系统基础1.osi七层协议模型2.osi七层协议......