07网络编程及网络基础知识

【一】C/S模型和B/S模型

1.C/S模型----》c是指客户端,请求服务的,s是服务端,提供服务的
2.B/S模型----》B/S架构本质也是C/S架构让浏览器充当各个厂家的客户端 用户无需对应下载相应客户端
两种架构的优缺点C/S架构:王者荣耀优势:针对客户端可以高度定制劣势:需要用户去下载才能使用B/S架构:普通网页优势:无需下载 急速体验劣势:无法做到高度定制 体验效果较差'''目前的趋势其实更加偏向于B/S架构微信小程序只需要下载一个微信就可以通过微信去访问很多服务端支付宝诸多应用只需要下载一个支付宝就可以通过支付宝体验很多服务统一提供接口服务>>>:获取大量用户及数据 中途还可以提供广告服务
    '''

【二】网络编程

1.基于互联网编写代码
2.可以开发C/S架构的软件
3.目的:实现不同计算机之间数据交互没有网络编程技术的时候只能拿U盘拷贝并携带为了跨区域交互数据所以发明了网络编程4.互联网协议(OSI七层协议)各个手机厂商的手机零部件相同是因为要遵循同一个协议标准

【三】OSI七层协议

物联网淑慧试用1.应用层2.表示层3.会话层4.传输层5.网络层6.数据链路层7.物理层TCP五层模型是上三层总结为应用层1.应用层2.传输层3.网络层4.数据链路层5.物理层

【四】网络必知小知识

1.互联网----计算机彼此链接到一起的介质
2.互联网的目的----可以进行数据交互
3.上网的本质----通过网线去访问别的计算机的资源
其实我们的计算机也可以称之为是服务器/服务端(专门对外提供服务)

【五】网络设备介绍

1.交换机让接入交换机的计算机可以彼此互联
2.局域网由交换机组成的网络
3.广播与单播广播:在交换机中一个计算机发送了消息,所有计算机都会接收到单播:定向回复消息(利用mac地址--是每台计算机的身份证)
4.路由器将局域网彼此链接起来支持数据交互互联网可以看作是多个局域网链接起来
"""
在局域网中可以直接基于mac地址实现数据交互但是可能会产生广播风暴:交换机中同一时间出现太多广播操作
mac地址只能用于局域网交互数据 不能跨局域网传输
""" 
5.mac地址(网卡的物理地址)硬件地址可以说每个网卡都是独一无二的每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号) 

【六】详解OSI七层模型

1.物理层利用物理介质发送高低电频,会变成0101负责在物理媒介上传输原始比特流,包括电缆、光纤等。它主要关注硬件细节和传输介质的特性。
2.数据链路层 电信号的分组方式---》为了分组转发负责将比特流组织成帧,进行物理寻址和错误检测。以太网协议和PPP协议是数据链路层的典型实现。
3.网络层引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址IP协议---》规定了每台接入互联网的计算机都必须有一个IP地址(取决于网线)IPV4:点分十进制最小:0.0.0.0最大:255.255.255.255不够用而出现了IPV6IPV6:肯定够用
ps:IP地址可以唯一标识地球上独一无二的一台接入互联网的计算机    """IP地址分为公网IP和私网IP公网IP是可以直接被浏览器访问到的 但是私网IP是不可以的我们所有人的电脑默认使用的都是私网IP公网IP需要花钱购买并且需要实名认证并备案很多非法网站都是在国外注册备案"""  
4.传输层建立端口到端口的通信PORT协议(端口协议)------用于标识一台计算机上面正在运行的应用程序(端口号类似于手牌号)"""一台计算机上面可以运行很多数据交互软件 比如微信、qq、钉钉它们都是从内存中获取数据 为什么不会错乱就是因为端口协议的存在!!!"""端口号的范围是:0~655350~1024:系统经常使用的端口号1024~8000:常用软件端口号我们以后在写项目的时候推荐使用8000之后的端口1.同一时间同一台计算机上面端口号不能冲突2.端口号是动态分配的eg:打开微信随机分配一个没有被使用的端口号8888关闭微信重新打开那么会随机分配可能还是8888也可能是其他
"""
IP地址:用于标识全世界独一无二的一台接入互联网的计算机
PORT号:用于标识一台计算机上面的某一个应用程序
​
IP+PORT:能够标识全世界独一无二的一台计算机上面的某一个应用程序*****
​
我们日常生活使用浏览器访问的各个网址其实就是IP+PORTwww.baidu.com                   好记14.215.177.29:80      难记ip:port很多常见的服务端都不需要指定端口 只要访问了ip地址内部去会自动映射​
域名解析将好记的地址解析成真正的地址www.baidu.com     解析        202.108.22.5:80
​

【七】TCP与UDP协议

1.tcp协议面向连接,流式协议,可靠协议基于TCP协议进行数据交互之前需要做一系列复杂的操作>>>:三次握手四次挥手三次握手建立链接--》第一次客服端发送建立链接请求,(第二次服务端答复确认建立链接,第三次服务端发送建立链接)可以整合成一次,第四次客户端同意建立链接eg:彼此挖通道四次挥手断开连接---》第一次客服端发送断开请求,第二次服务端答复同意断开链接,第三次服务端发送断开链接,第四次客户端同意断开链接eg:彼此切断通道
​
2.UDP协议丢包协议、不可靠协议,因为他不会进行确认反馈不需要建立双向通道 数据的传输速度快 但是可能会丢失qq使用的就是UDP协议 所以有时候会产生数据丢失现象但是我们可以在UDP协议的基础之上做很多额外的扩展来保证数据的安全
面试题
# TCP协议之所以比UDP协议可靠 就是因为有双向通道 对不对?描述的不够精确 不对!!!TCP协议之所以比UDP协议可靠 原因在于TCP协议发送消息有反馈机制基于TCP发送的消息会在本地先保存该消息 如果对方确认收到才会删除否则在一定的时间内会频繁的多次发送知道确认或者直到超时为止UDP协议发送数据之后会立刻删除内存数据 不会保留

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/840576.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

using 用于枚举值

1. 用using声明枚举值 假设有一个限定范围的枚举类型(用枚举类声明): enum class Status{open, progress, done 9}; 与未限定作用域的枚举类型(不带类的枚举) 不同,此类型的值需要带有类型名的限定符: auto x Status::open; // OK auto x open; // ERROR…

腾讯云COS上传文件出现的问题

1、没有配置 ObjectMetadata 的文件长度 腾讯云COS上传文件出现数据损坏问题_no content length specified for stream data. strea-CSDN博客 2、 使用 FileInputStream使用完没有及时关闭导致报错 ClientAbortException: java.nio.channels.ClosedChannelException 添加…

滑动谜题 leetcode的BFS题目 启发如何写一个拼图编程呢

题目链接 题目要求,要将上面的拼板拼成123450 首先,转换为字符串,为什么要转换为字符串呢,因为处理会变得很简单比如示例一,转化为字符串是12345,目标字符串为123450,只需要证明通过某种交换&a…

AI爆文写作:或许开放性的标题,才会更让人想点开了解答案

这是新华社公众号的一条推文 从信息传递上来说,新闻标题应该直接,包含关键信息。 但这个标题,却没有直接点名哪个国家,要点进去才能看到。 这就是要让人点开的标题特征,标题没有提供完整信息,是开放性的…

Apache Hive 安装与配置的详细教程

1. Hive简介 Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能…

infoq读书笔记-Davide Taibi博士-花8年转型微服务却得不到回报,问题出在哪 儿?

InfoQ:您的论文“On the Definition of Microservice Bad Smells”涉及非常多的微服务不良做法,但如果要用几个大类别来列举危害性比较大的微服务反模式,您认为会是哪几类?另外,您能再大概分析说明下造成这个几个反模式…

linux新机快速配置ssh

配置SSH以实现证书登录 要配置新的Linux机器以实现证书登录,您需要执行以下步骤: 安装SSH服务器: sudo apt-get install openssh-server修改SSH端口(可选): SSH配置文件(通常位于/etc/ssh/sshd…

产品经理-产品设计规范(六)

1. 设计规范 2. 七大定律 2.1 菲茨定律 2.1.1 概念 2.1.2 理解 2.1.3 启示 按钮等可点击对象需要合理的大小尺寸根据用户使用习惯合理设计按钮的相对和绝对位置屏幕的边和角很适合放置像菜单栏和按钮这样的元素 2.1.4 参考使用手机习惯 2.1.5 案例 2.2 席克定律 2.2.1 概念 …

Android make命令简述

Android make命令简述 Android的make系统是一个构建工具,用于管理Android应用项目的编译和构建过程。它使用Makefile文件来定义项目的编译规则和依赖关系。在Android开发中,make系统通常与NDK(Native Development Kit)一起使用,用于编译和构建 C/C++ 代码。make是GNU Mak…

MySQL8.0新特性CTE表达式递归实现累加运算 1+2+…+n 等于多少?

上一篇内容,通过MySQL存储过程实现累加运算 12…n 等于多少的需求,使用当前主流版本MySQL5.7.x 和MySQL8.0.x,以及最新的MySQL8.4 LST版本。 WITH AS子句在MySQL 8.0.x及更高版本中得到支持,而在MySQL 5.7及以下版本中则不支持。…

Spring Boot 中使用 MDC 追踪一次请求全过程(日志链路)

Spring Boot 中使用 MDC 追踪一次请求全过程(日志链路) ControllerLogAspect package com.yymt.common.trace;import cn.hutool.json.JSONUtil; import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.…

XShell-连接-Centos 7

XShell 连接Centos 7 一.准备 安装XShell XShell下载地址: 在虚拟机上安装Centos 7,具体操作自行学习 二.Centos 7的准备 1.网络适配器修改为NAT 2.获取IP 输入命令: ip addr我的Centos 7对外IP为192.168.174.129 三.XShell连接Cento…

C++标准模板库(STL)简介

简述 STL(Standard Template Library)是一套功能强大的 C 模板类和函数的集合,它提供了一系列通用的、可复用的算法和数据结构。它帮住我们实现了基本的数据结构容器,和与之对应的操作。使用它可以减少代码长度,增加代…

TCP 三次握手协议能否变成二次握手

TCP 三次握手协议能否变成二次握手? 看了很多回答,都比较长,按照个人理解的话, 1、第一次握手:建立连接时,客户端发送syn包(synj)到服务器,并进入SYN_SENT状态&#xf…

docker 离线镜像

1. 在已经部署了镜像的机器上获取镜像   1.1 获取镜像名     docker images   1.2 打包选中对应的镜像     docker save <image_name> -o <image_name>.tar 2. 在将要使用的机器上部署需要的镜像   2.1 加载镜像     docker load -i <image_n…

【百度云千帆AppBuilder】诗词达人:AI引领的诗词文化之旅

文章目录 写在前面&#xff1a;百度云千帆AppBuilder诗词达人&#xff1a;AI引领的诗词文化之旅功能介绍&#xff1a;诗词达人智能体的深度体验1. 诗词接龙学习2. 诗词深度解析3. 互动式问答4. 诗词创作辅助 技术特点详解&#xff1a;"诗词达人"智能体的创新技术零代…

项目9-网页聊天室8(消息的发送和接收之websocket)

这是整个项目最最核心的部分. 但是这个部分的编写&#xff0c;需要依赖"基础设施" 包括不限于前面已经实现的 主界面,用户管理,会话管理, 好友管理, 消息管理 等等.... 发送消息,和接收消息,需要"实时传输 张三 发了一条消息,李四 这边立即就能接收到, 这样的…

【游戏引擎】Unity脚本基础 开启游戏开发之旅

持续更新。。。。。。。。。。。。。。。 【游戏引擎】Unity脚本基础 Unity脚本基础C#语言简介C#基础 Unity脚本基础创建和附加脚本MonoBehaviour生命周期生命周期方法 示例脚本 Unity特有的API常用Unity API 实践示例&#xff1a;制作一个简单的移动脚本步骤1&#xff1a;创建…

对于超长的json数据包,采用分割方式分别上传

例如对于一个长度为5.5M的json数据包&#xff0c;可以将其分割为一包数据长度为64KB大小的小包&#xff0c;再依次读取上传 参考代码如下&#xff1a; #include <stdio.h> #include <string.h>#define SEGMENT_SIZE 64*1024 // 每个数据段的大小&#xff0c;这里…

口碑比较好的相亲交友平台有哪些?正规靠谱的相亲软件排行榜测评

在网络时代&#xff0c;越来越多的人热衷于使用相亲交友软件来寻找生命中的另一半。这些软件确实为许多用户提供了真实可靠的交友平台。然而&#xff0c;市面上的相亲软件种类繁多&#xff0c;质量良莠不齐&#xff0c;让人难以选择。今天&#xff0c;我将介绍几款我使用过且认…