网络通信基础

1.网络结构模式(C/S和B/S)

(1)C/S结构模式
服务器 - 客户机,即 Client - Server(C/S)结构。
优点:
      能充分发挥客户端 PC 的处理能力,很多工作可以在客户端处理后再提交给服务器,所以 C/S 结构客户端响应速度快; 操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求; C/S 结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程;安全性较高,C/S 一般面向相对固定的用户群,程序更加注重流程,它可以对权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强,一般高度机密的信息系统采用 C/S 结构适宜。
缺点:
      客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高;对客户端的操作系统一般也会有限制,不能够跨平台。
(2)B/S结构
优点:
      B/S 架构最大的优点是总体拥有成本低、维护方便、 分布性强、开发简单,可以不用安装任何专门的软件就能实现在任何地方进行操作,客户端零维护,系统的扩展非常容易,只要有一台能上网的电脑就能使用。
缺点:
      通信开销大、系统和数据的安全性较难保障;个性特点明显降低,无法实现具有个性化的功能要求;协议一般是固定的:http/https; 客户端服务器端的交互是请求-响应模式,通常动态刷新页面,响应速度明显降低。

2.MAC 地址

直译为媒体存取控制位址,也称为局域网地址、以太网地址、物理地址或硬件地址
网卡的主要功能:1.数据的封装与解封装、2.链路管理、3.数据编码与译码。

3. IP 地址

IP 地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址
IP 地址是一个 32 位的二进制数
IP 协议是为计算机网络相互连接进行通信而设计的协议

根据地址类型不同分为A,B,C由InternetNIC分配,D,E为特殊地址:
一个地址都是由32位组成,四个组块。四个组块表示不同的东西,表示不同类。

1.A类IP地址

第一段为网络号码(1 字节的网络地址),剩下的三段号码为本地计算机的号码(3 字节主机地址)。网络地址的最高位必须是“0”。一般用于大型网络

2.B类IP地址

前两段为网络号码(2个字节的网络地址),剩下的二段号码为本地计算机的号码(2个字节主机地址)。网络地址的最高位必须是“10”。B 类网络地址适用于中等规模的网络。

3.C类IP地址

前三段为网络号码(3个字节的网络地址),剩下的一段号码为本地计算机的号码(1个字节主机地址)。网络地址的最高位必须是“110”。适用于小规模的局域网络

4.D类IP地址

D 类 IP 地址在历史上被叫做多播地址(multicast address),即组播地址。多播地址的最高位必须是 “1110”,范围从
224.0.0.0 - 239.255.255.255。

5.特殊的网址

每一个字节都为 0 的地址( “0.0.0.0” )对应于当前主机;
IP 地址中的每一个字节都为 1 的 IP 地址( “255.255.255.255” )是当前子网的广播地址;
IP 地址中凡是以 “11110” 开头的 E 类 IP 地址都保留用于将来和实验使用。
IP地址中不能以十进制 “127” 作为开头,该类地址中数字 127.0.0.1 到 127.255.255.255 用于回路测
试,如:127.0.0.1可以代表本机IP地址。

子网掩码

作用:某个 IP 地址划分成网络地址和主机地址两部分。通过子网掩码将A、B、C 三类地址划分为若干子网

4.端口

1.虚拟端口:指计算机内部或交换机路由器内的端口,不可见
2.物理端口:可见端口
3.分类:周知端口(Well Known Ports)、注册端口(Reg)、动态端口 / 私有端口(Dynamic Ports / Private Ports)

5.网络模型

OSI七层参考模型

从上到下为上层到底层的关系

OSI参考模型各层的解释
应用层为应用程序提供服务
表示层数据格式转化、数据加密
会话层建立、管理和维护会话
传输层建立、管理和维护端到端的连接
网络层IP选址及路由选择
数据链路层提供介质访问和链路管理
物理层物理层

各层具体解释:
1.物理层
   传输比特流,接受和释放由1、0转化为电流强弱来进行传输(数模转换与模数转换)。这一层的数据叫比特
2.数据链路层
   建立逻辑连接、进行硬件地址寻址、差错校验等功能。将比特组合成字节进而组合成帧,用MAC地址访问介质。
3.网络层
   进行逻辑地址寻址,在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选
择。
4.传输层
   定义了一些传输数据的协议和端口号。能建立管理维护 的连接
5.会话层
   主要在你的系统之间发起会话或者接受会话请求。
6.表示层
   数据的表示、安全、压缩
7.应用层
   这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。

新的TCP/IP协议
TCP/IP四层协议
osi7层协议中的应用层、表示层、会话层在tcp/ip模型中为应用层,传输层和网络层不变,数据链路层和物理层在tcp/ip中称为网络接口层

6.协议

应用层常见的协议有:FTP协议(File Transfer Protocol 文件传输协议)、HTTP协议(Hyper Text
Transfer Protocol 超文本传输协议)、NFS(Network File System 网络文件系统)。
传输层常见协议有:TCP协议(Transmission Control Protocol 传输控制协议)、UDP协议(User
Datagram Protocol 用户数据报协议)。
网络层常见协议有:IP 协议(Internet Protocol 因特网互联协议)、ICMP 协议(Internet Control
Message Protocol 因特网控制报文协议)、IGMP 协议(Internet Group Management Protocol 因特
网组管理协议)。
网络接口层常见协议有:ARP协议(Address Resolution Protocol 地址解析协议)、RARP协议
(Reverse Address Resolution Protocol 反向地址解析协议)

7.封装

上层协议是如何使用下层协议提供的服务的呢?其实这是通过封装(encapsulation)实现的。应用程序
数据在发送到物理网络上之前,将沿着协议栈从上往下依次传递。每层协议都将在上层数据的基础上加
上自己的头部信息(有时还包括尾部信息),以实现该层的功能,这个过程就称为封装。(也为传输过程)
在这里插入图片描述

8.arp协议

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址(mac地址)的一个TCP/IP协议
arp请求包组成:
以太网帧头 14字节 + arp报文长度 28字节

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

GitKraken保姆级图文使用指南

前言 写这篇文章的原因是组内的产品和美术同学,开始参与到git工作流中,但是网上又没有找到一个比较详细的使用教程,所以干脆就自己写了一个[doge]。文章的内容比较基础,介绍了Git内的一些基础概念和基本操作,适合零基…

CSS变形与动画(三):animation帧动画详解(用法 + 四个例子)

文章目录 animation 帧动画使用定义例子1 字母例子2 水滴例子3 会动的边框例子4 旋转木马 animation 帧动画 定义好后作用于需要变化的标签上。 使用 animation-name 设置动画名称 animation-duration: 设置动画的持续时间 animation-timing-function 设置动画渐变速度 anim…

做好需求分析的4大关键认知

探索如何正确的需求分析?本文详细介绍了4大关键点,帮助您明确用户与产品需求、深入挖掘用户动机,并为产品经理提供筛选需求的实用建议。 一、什么是需求分析以及重要性 需求分析指的是在建立一个新的或改变一个现存的产品时,确定新…

docker run 命令30个常用参数详解

文章目录 0.前言docker run 命令示例 2.Docker run 多种用法知其然知其所以然1. 基本用法2. 启动交互式容器3. 映射端口4. 挂载文件/目录5. 设置环境变量6. 指定容器名称7. 后台运行容器8. 重启策略9. 其他参数 2. docker run 命令参数详解1. -d:以后台模式&#xf…

【云原生,k8s】基于Helm管理Kubernetes应用

第四阶段 时 间:2023年8月18日 参加人:全班人员 内 容: 基于Helm管理Kubernetes应用 目录 一、Kubernetes部署方式 (一)minikube (二)二进制包 (三)Kubeadm …

(白帽黑客)自学笔记

一、前言: 1.这是一条坚持的道路,三分钟的热情可以放弃往下看了. 2.多练多想,不要离开了教程什么都不会了.最好看完教程自己独立完成技术方面的开发. 3.有时多 google,baidu,我们往往都遇不到好心的大神,谁会无聊天天给你做解答. 4.遇到实在搞不懂的,可以先放放,以…

Unity自定义脚本的 初始模版

参考博主:Unity修改创建的脚本模板,Unity脚本模板路径_unity hub 怎么改脚本模板_先生沉默先的博客-CSDN博客 【100个 Unity实用技能】 ☀️ | Unity自定义脚本的初始模版_unity 模板脚本_呆呆敲代码的小Y的博客-CSDN博客 一,将脚本放到Ed…

【java毕业设计】基于Spring Boot+Vue+mysql的论坛管理系统设计与实现(程序源码)-论坛管理系统

基于Spring BootVuemysql的论坛管理系统设计与实现(程序源码毕业论文) 大家好,今天给大家介绍基于Spring BootVuemysql的论坛管理系统设计与实现,本论文只截取部分文章重点,文章末尾附有本毕业设计完整源码及论文的获取…

利用Python隧道爬虫ip轻松构建全局爬虫网络

嘿,爬虫程序员们!你们有没有碰到过需要大规模数据爬取的情况?也许你们之前遇到过网站的反爬措施,卡住你们的进度。别担心,今天我来分享一个利用Python隧道爬虫ip实现的方法,帮助你们轻松搭建全局爬虫ip网络…

2.SpringMvc中Model、ModelMap和ModelAndView使用详解

1.前言 最近SSM框架开发web项目,用得比较火热。spring-MVC肯定用过,在请求处理方法可出现和返回的参数类型中,最重要就是Model和ModelAndView了,对于MVC框架,控制器Controller执行业务逻辑,用于产生模型数据…

OJ练习第150题——分割回文串

分割回文串 力扣链接&#xff1a;131. 分割回文串 题目 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 Java代码 class Solution {List<List…

C++ STL list

✅<1>主页&#xff1a;我的代码爱吃辣 &#x1f4c3;<2>知识讲解&#xff1a;C之 STL list介绍和模拟实现 ☂️<3>开发环境&#xff1a;Visual Studio 2022 &#x1f4ac;<4>前言&#xff1a;上次我们详细的介绍了vector&#xff0c;今天我们继续来介绍…

卷积操作后特征图尺寸,感受野,参数量的计算

文章目录 1、输出特征图的尺寸大小2、感受野的计算3、卷积核的参数量 1、输出特征图的尺寸大小 如果包含空洞卷积&#xff0c;即扩张率dilation rate不为1时&#xff1a; 2、感受野的计算 例如&#xff0c;图像经过两个3*3&#xff0c;步长为2的卷积后感受野为&#xff1a; co…

Docker数据卷容器

1.数据卷容器介绍 即使数据卷容器c3挂掉也不会影响c1和c2通信。 2.配置数据卷容器 创建启动c3数据卷容器&#xff0c;使用-v参数设置数据卷。volume为目录&#xff0c;这种方式数据卷目录就不用写了&#xff0c;直接写宿主机目录。 创建c1、c2容器&#xff0c;使用–volum…

nginx反向代理流程

一、nginx反向代理流程 反向代理&#xff1a;使用代理服务器来接受internet上的连接请求&#xff0c;然后将请求转发给内部网络中的上游服务器&#xff0c;并将上游服务器得到的结果返回给请求连接的客户端&#xff0c;代理服务器对外表现就是一个web服务器。Nginx就经常拿来做…

ByteBuffer 使用

ByteBuffer 使用 1 java.nio包中的类定义的缓冲区类型2 缓冲区常用属性2.1缓冲区的容量(capacity)2.2 缓冲区的位置(position)2.3 缓冲区的限制(limit)2.4 缓冲区的标记(mark)2.5 剩余容量 remaining/hasRemaining 3 缓冲区常用方法3.1 创建缓冲区3.1.1 allocate方法3.1.2 wrap…

87-基于stm32单片机粮仓仓库环境温湿度烟雾监测报警系统Proteus仿真+源码

资料编号&#xff1a;087 一&#xff1a;功能介绍&#xff1a; 1、采用stm32单片机OLED显示屏烟雾浓度检测DHT11温湿度电机按键蜂鸣器&#xff0c;制作一个温湿度采集、烟雾浓度采集&#xff0c;OLED显示相关数据&#xff0c; 2、通过按键设置温度上限、烟雾浓度上限&#xff0…

JVM虚拟机:初始化的介绍

本文重点 我们前面学习了三个步骤: 装载 连接 初始化 初始化 初始化的时候,会为静态成员变量赋值初始值,它有两种方式: ①声明类变量是指定初始值 ②使用静态代码块为类变量指定初始值 例子 最后输出的结果为3,它的过程是这样的: main方法中输出T.count,由于count是…

爬虫的代理IP池写哪里了?

亲爱的程序员小伙伴们&#xff0c;想要提高爬虫效率和稳定性&#xff0c;组建一个强大的代理IP池是非常重要的一步&#xff01;今天我就来和你分享一下&#xff0c;代理IP池到底应该写在哪里&#xff0c;以及如何打造一个令人瞩目的代理IP池&#xff01;准备好了吗&#xff1f;…

学习笔记整理-面向对象-03-构造函数

一、构造函数 1. 用new调用函数的四步走 new 函数();JS规定&#xff0c;使用new操作符调用函数会进行"四步走"&#xff1a; 函数体内会自动创建出一个空白对象函数的上下文(this)会指向这个对象函数体内的语句会执行函数会自动返回上下文对象&#xff0c;即使函数没…