网络编程基本概念
网络编程基本概念
为什么需要网络编程?
用户在浏览器中,打开在线视频网站,如优酷看视频,实质是通过网络,获取到网络上的一个视频资源。
与本地打开视频文件类似,只是视频文件这个资源的来源是网络。
相比于本地资源来说,网络提供了更为丰富的网络资源:

所谓的网络资源,其实就是在网络中可以获取的各种数据资源。而所有的网络资源,都是通过网络编程来进行数据传输的。
什么是网络编程?
网络编程,指网络上的主机,通过不同的进程,以编程的方式实现网络通信(或称为网络数据传输)

- 进程A:编程来获取网络资源
- 进程B:编程来提供网络资源
网络基本概念
请求和响应
一般来说,获取一个网络资源,涉及到两次网络数据传输:
第一次:请求数据的发送
第二次:响应数据的发送

客户端和服务器
服务端:在常见的网络数据传输场景下,把提供服务的一方进程,称为服务端,可以提供对外服务。
客户端:获取服务的一方进程,称为客户端。
-
客户端获取服务资源

-
客户端保存资源在服务端

常见的客户端服务端模型
- 客户端先发送请求到服务端
- 服务端根据请求数据,执行相应的业务处理
- 服务端返回响应:发送业务处理结果
- 客户端根据响应数据,展示处理结果(展示获取的资源,或提示保存资源的处理结果)
网络编程概念分享到此就结束了!感谢大家观看!
相关文章:
网络编程基本概念
网络编程基本概念 为什么需要网络编程? 用户在浏览器中,打开在线视频网站,如优酷看视频,实质是通过网络,获取到网络上的一个视频资源。 与本地打开视频文件类似,只是视频文件这个资源的来源是网络。 相…...
Flutter模板
简介 这个项目是Flutter应用程序的起点。与创建的官方默认模板相比,该项目实现了状态管理等功能,用于Url、本地化等的Navigator 2.0路由。 开始 该项目的入口文件为 ‘lib/init/init.dart’ 特性 状态管理 基于provider. Navigator 2.0适配 代码…...
坐标变换(其一)CSP
坐标变换(其一) 问题描述 对于平面直角坐标系上的坐标 (x,y),小 P 定义了一个包含 n 个操作的序列 T(t1,t2,⋯,tn)。其中每个操作 ti(1≤i≤n)包含两个参数 dxi 和 dyi,表示将坐标 (x,y) 平移至 (xdxi,yd…...
C语言实现万年历
C语言实现万年历 一、项目介绍 需求和功能是用纯C语言实现一个可以属于年份,属于一个年份就可以显示该年各个月份的日历,如同日历一般,每个月当中每天对应的星期均可查看,即万年历,要求格式整齐,星期对照直…...
arp报文及使用go实现
一、ARP协议报文格式及ARP表 ARP(Address Resolution Protocal,地址解析协议)是将IP地址解析为以太网的MAC地址(或者称为物理地址)的协议。在局域网中,当主机或其他网络设备有数据要发送给另一个主机或设备…...
C++ 文件和流、异常处理、动态内存、预处理器
一、C文件和流: 在C中进行文件处理,需要包含头文件<iostream>和<fstream>。fstream标准库定义的三个新的数据类型: 数据类型 描述 ofstream 该数据类型表示输出文件流,用于创建文件并向文件写入信息。 ifstream …...
夜神模拟器 burp抓包 ADB 微信小程序
夜神模拟器 burp抓包 ADB 微信小程序 初始环境准备应用连接证书转换设置夜神模拟器环境ADB配置测试burp抓包 初始环境准备 既然想了解如何抓包,我想大多数是已经安装好 夜神模拟器 和 Burp 了,这里就不在赘述,直接开始操作。 openssl 的下载…...
WPF实战项目十七(客户端):数据等待加载弹框动画
1、在Common文件夹下新建文件夹Events,新建扩展类UpdateLoadingEvent public class UpdateModel {public bool IsOpen { get; set; }}internal class UpdateLoadingEvent : PubSubEvent<UpdateModel>{} 2、新建一个静态扩展类DialogExtensions来编写注册和推…...
22-Python与设计模式--状态模式
22-Python与设计模式–状态模式 一、电梯控制器 电梯在我们周边随处可见,电梯的控制逻辑中心是由电梯控制器实现的。电梯的控制逻辑,即使简单点设计, 把状态分成开门状态,停止状态和运行状态,操作分成开门、关门、运…...
电脑键盘推荐
一、键盘分类 (1)键位个数 目前有75,84,87,98,104,108的。 (2)薄膜键盘和机械键盘 薄膜键盘就是大多数办公室常见的键盘,主要打一个便宜,耐造…...
大数据-之LibrA数据库系统告警处理(ALM-37001 MPPDBServer实例Redo日志缺失)
告警解释 当DN主实例有未同步到DN备实例的xlog日志被删除时,产生该告警。 告警属性 告警ID 告警级别 可自动清除 37001 严重 是 告警参数 参数名称 参数含义 ServiceName 产生告警的服务名称 RoleName 产生告警的角色名称 HostName 产生告警的主机名…...
C#关键字、特性基础及扩展合集(持续更新)
一、基础 Ⅰ 关键字 1、record record(记录),编译器会在后台创建一个类。支持类似于结构的值定义,但被实现为一个类,方便创建不可变类型,成员在初始化后不能再被改变 (C#9新增) …...
单例模式-支持并发的C语言实现
代码实现: c #include <stdio.h> #include <stdlib.h> #include <pthread.h>// 定义单例对象结构体 typedef struct {// 单例对象的数据成员int value; } Singleton;// 静态变量,用于保存唯一实例的指针 static Singleton* instance …...
java_基础_数据类型
1.数据类型 java 语言是强类型语言,对于每一种数据都给出了明确的数据类型,不同的数据类型也分配了不同的内存空间,所以他们的数据大小也不一样的. 数据类型关键字内存占用取值范围整数byte1-128~127short2-32768~32767int4-2的31次方到2的31次方-1long8-2的63次方到2的63次方…...
C++入门第九篇---Stack和Queue模拟实现,优先级队列
前言: 我们已经掌握了string vector list三种最基本的数据容器模板,而对于数据结构的内容来说,其余的数据结构容器基本都是这三种容器的延申和扩展,在他们的基础上扩展出更多功能和用法,今天我们便来模拟实现一下C库中…...
计算机组成原理(计算机系统概述)
目录 一. 计算机的发展二. 计算机硬件的基本组成2.1 早期冯诺依曼机2.2 现代计算机的结构 三. 各硬件的工作原理3.1 主存储器的基本组成3.2 运算器的基本组成3.3 控制器的基本组成 四. 计算机的工作过程 \quad 一. 计算机的发展 计算机系统 硬件 软件 #mermaid-svg-gp2AsYELE…...
Qt手写ListView
创建视图: QHBoxLayout* pHLay new QHBoxLayout(this);m_pLeftTree new QTreeView(this);m_pLeftTree->setEditTriggers(QAbstractItemView::NoEditTriggers); //设置不可编辑m_pLeftTree->setFixedWidth(300);创建模型和模型项: m_pLeftTree…...
【开源】基于Vue.js的城市桥梁道路管理系统的设计和实现
项目编号: S 025 ,文末获取源码。 \color{red}{项目编号:S025,文末获取源码。} 项目编号:S025,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 查询城市桥…...
2、git进阶操作
2、git进阶操作 2.1.1 分支的创建 命令参数含义git branch (git checkout -b)<new_branch> <old_branch>表示创建分支-d <-D>删除分支 –d如果分支没有合并,git会提醒,-D强制删除-a -v查看分支-m重新命名分支commit id从指定的commi…...
集线器-交换机-路由器
1.集线器(Hub) 集线器就是将网线集中到一起的机器,也就是多台主机和设备的连接器。集线器的主要功能是对接收到的信号进行同步整形放大,以扩大网络的传输距离,是中继器的一种形式,区别在于集线器能够提供多端口服务,也…...
RDM接收端避坑指南:从哑音状态处理到UID校验,我的调试血泪史
RDM接收端避坑指南:从哑音状态处理到UID校验,我的调试血泪史 灯光控制系统的开发者们,如果你正在为RDM协议接收端的稳定性头疼不已,这篇文章或许能帮你省下几周的通宵调试时间。在实际工程中,协议文档的"理想情况…...
易语言串口通讯源码:掌握工业控制与通讯的关键
易语言 串口通讯 源码 串口通讯写好了 ,就可以轻松地控制电力仪表 信号采集 单片机等 信号 。 本源码为串口调试助手源码 此源码对了解以下知识非常重要 工业控制, 232通讯, 485通讯, MODbus协议, CRC16检验算法&am…...
NSudo完整指南:解锁Windows系统管理终极权限的5种方法
NSudo完整指南:解锁Windows系统管理终极权限的5种方法 【免费下载链接】NSudo [Deprecated, work in progress alternative: https://github.com/M2Team/NanaRun] Series of System Administration Tools 项目地址: https://gitcode.com/gh_mirrors/ns/NSudo …...
如何用Obsidian Projects解决碎片化知识管理难题:从笔记到项目的一站式解决方案
如何用Obsidian Projects解决碎片化知识管理难题:从笔记到项目的一站式解决方案 【免费下载链接】obsidian-projects Plain text project planning in Obsidian 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-projects 你是否经常在Obsidian中积累了…...
Nginx 学习总结从
1. 引入 在现代 AI 工程中,Hugging Face 的 tokenizers 库已成为分词器的事实标准。不过 Hugging Face 的 tokenizers 是用 Rust 来实现的,官方只提供了 python 和 node 的绑定实现。要实现与 Hugging Face tokenizers 相同的行为,最好的办法…...
LFM2.5-1.2B-Thinking-GGUF实战手册:GPU显存占用监控与llama.cpp内存调优
LFM2.5-1.2B-Thinking-GGUF实战手册:GPU显存占用监控与llama.cpp内存调优 1. 模型与平台介绍 LFM2.5-1.2B-Thinking-GGUF是Liquid AI推出的轻量级文本生成模型,专为低资源环境优化设计。该模型采用GGUF格式,配合llama.cpp运行时,…...
从零规划一个高校新校区网络:除了技术选型,这些坑你绕过去了吗?
高校新校区网络规划实战指南:从技术选型到避坑全解析 当清晨的第一缕阳光洒在新校区的建筑群上,网络架构师手中的拓扑图正决定着未来数万师生能否流畅开展在线教学、科研协作和校园生活。不同于传统企业网络,高校环境具有用户密度高、业务类型…...
毕业季求生指南:如何用AI告别论文写作的“至暗时刻”?
凌晨三点的图书馆,咖啡杯堆成小山,屏幕前双眼通红的你还在为第三章的实验数据发愁——这或许是许多人学生时代最深刻的记忆。而今天,一个名叫“百考通AI”的工具正在悄然改变这一切。 深夜十二点,计算机专业的李明仍在实验室里对着…...
建立班级相册?超简单,保姆级教你在PPT里建立班级“小红书”,3步打造有温度的班级小世界!
边听边看收获更多! 班级相册超简单,保姆级教你在PPT里建立班级“小红书”社区!你有搞班级相册吗? 是不是早已 “名存实亡”? 每次班级活动拍了几十张照片,最后都散落在微信群、QQ 群的聊天记录里 —— 想找…...
Nginx-UI 终极安装指南:快速解决端口配置与访问问题
Nginx-UI 终极安装指南:快速解决端口配置与访问问题 【免费下载链接】nginx-ui Yet another WebUI for Nginx 项目地址: https://gitcode.com/gh_mirrors/ngi/nginx-ui Nginx-UI 是一个基于 Go 和 Vue 开发的现代化 Nginx 图形化管理工具,为运维人…...
