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

网络编程

时间:2022-11-15 17:34:06浏览次数:37  
标签:架构 计算机 编程 网络 服务端 客户端

软件开发架构

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架构的优劣之分

c/s架构
	优势:不同公司的客户端由不同公司独立开发,可以高度定制化客户端功能
    劣势: 需要下载才能使用
B/S架构
	优势:不用下载直接访问
    劣势:无法高度定制化,并且需要遵守很多规则

架构总结

ATM:三层架构
选课系统:三层架构
本质也属于软件开发架构的范畴

软件设计的大方向》》》:统一接口
	比如:微信小程序
    	 支付宝小程序

网络编程前戏

1.什么是网络编程
	基于网络编写代码,能够实现数据的远程交互
2.学习网络编程的目的
    是能够开发cs架构的软件
3.网络编程的起源
	"""
最早起源于美国军事领域
是想实现计算机之间的数据的交互
最早的时候只能用硬盘拷贝
之后为了方便发明了网络编程
	"""
4.网络编程必备条件
	数据的远程交互
    	1.早期的电话
            电话线
        2.早期的大屁股电脑
        网线
        3.笔记本电脑,移动电话
        网卡
        ps:实现数据的远程交互必备的基础条件是物理连接介质

OSI七层协议简介

"""
OSI七层协议:规定了所有的计算机在远程数据交互的时候必须经过相同的处理流程,在制造过程中必须拥有相同的功能硬件
"""
应用层
表示层
会话层
传输层
网络层
数据链路成
物理连接层
ps:应,表,会,传,网,数,物


'''常见的是整合之后五层或者四层'''
应用层
传输层
网络层
数据链路层
物理连接层

应用层
传输层
网络层
网络接口层
"""
接收网络消息  数据由下往上传递
发送网络消息  数据由上往下传递
"""

OSI七层协议之物理连接层

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

OSI七层协议之数据链路层

1.规定了电信号的分组方式
2.以太网协议
	规定了计算机在出厂的时候都必须有一块网卡,卡上有一串数字
    该数字相当于是计算机的身份证号是独一无二的
    该数字的特征:12位16进制数据
    	前6位产商编号,后6位流水线号
    该数字也称为:以太网地址/MAC地址

网络相关专业名词

计算机之间要想实现数据交换必须要'连接'到一起
1.交互机
	能够将所有接入交换机的计算机彼此互联起来
2.广播
	首次查找接入同一个交换机的其他计算机,需要朝交换机里面吼一嗓子
3.单播
	首次被查找的计算机回应查找它的计算机,并附带自己的mac地址
4.广播风暴
	接入用一台交换机的多时发广告
5.局域网
 	可以简单的理解为有单个交换机组成的网络
6。广域网
	可以就简单的理解为范围更大的局域网
7.互联网
	由所有的局域网,广羽网连接到一起形成的网络
8.路由器
 	不同的局域网计算机之间是无法直接实现数据交互的,需要路由器连接    

OSI七层协议之网络层

IP协议:规定了所有接入互联网的计算机都必须有一个IP地址,类似于身份证号
	mac地址是物理地址可以看成永远无法修改
    	IP地址是动态分配的,不同的场合IP是不同的
IP地址特征:
    IPV4:点分十进制
    0,0,0,0
   255.255.255.255
    IPV6: 能够给地球上每一粒沙都分少一个lp地址
   ps:地址可以用来标识全世界独一无二的一台计算机

OSI七层协议之传输层

PORT协议
用来标识一台计算机上面的某一个应用程序
范围:0-65535、
特征:动态分配
建议: 0-1024   系统默认需要使用
1024-8000    常见软件的端口号
URL:统一资源定位符(网址)
    网络本质是有IP和PORT组成的!!!
 LP+PORT:能够定位全世界独一无二的一台计算机上面的某一个应用程序
域名解析:将网址解析成IP+PORT
我们之所以不直接使用IP+PORT的原因是太难记,所以发明了域名——也就是网址

IP:PORT  实际使用冒号连接
    114.55.205.139:80

标签:架构,计算机,编程,网络,服务端,客户端
From: https://www.cnblogs.com/lvqingmei/p/16893169.html

相关文章

  • 网络编程
    目录一.软件开发架构1.C/S架构2.B/S架构二.架构总结三.网络编程前戏1.什么是网络编程2.学习网络编程的目的3.网络编程的起源4.网络编程必备条件四.OSI七层协议1.引入:2.七......
  • 焦点科技编程挑战赛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:......