0%

计算机通识

计算机通识

1 进制转换

一、任务目标

理解二进制/八进制/十进制/十六进制的原理

掌握各种不同的进制间的转换方法

二进制转十六进制:每四位转一位,如1111 1111 1111 1111=FFFF
二进制转八进制:每三位转一位,如111 111 111=777
二进制转四进制:每二位转一位,如11 11 11=333
十六进制转二进制:如第一条反转,每一位转四位
十六进制转八进制:先转为10进制,然后除以8,如99/8=12–3 99=8*12+3 99=8^2^+8^1^ *4+3=143

二、任务背景

进制转换是软件工程师的必备技能,也是C1阶段的计算机通识模块之一,实际开发中的多媒体数据采集、分割、压缩、编解转码、传输、纠错、合并等工作都与它息息相关。本任务不涉及小数的进制转换,也不涉及二进制的反码、补码等知识

三、任务内容

1、进制定义

二进制:是指在数学和数字电路中以2为基数的记数系统,二进制只有0和1两个数字符号,其运算规律是逢2进1,例如101101。为了与其他进制区别,二进制数的后缀都用大写字母B,例如101101B

八进制:一种以8为基数的计数法,采用0,1,2,3,4,5,6,7这八个数字符号,其运算规律是逢8进1,例如77。为了与其他进制区别,八进制数的后缀都用大写字母O(不是数字0),例如77O

十进制:一种以10为基数的计数法,采用0,1,2,3,4,5,6,7,8,9这十个数字符号,其运算规律是逢10进1,例如88。为了与其他进制区别,十进制数的后缀都用大写字母D,例如88D

十六进制:一种以16为基数的计数法,采用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F这十六个数字和字母符号,其运算规律是逢16进1,例如9527。为了与其他进制区别,十六进制数的后缀都用大写字母H,例如9527H

2、各进制间的转换方法

2.1 二进制转其他进制

  • 二进制转十进制:采用位置计数法,其位权是以2为底的幂,顺序从右到左,从0开始计数。例如二进制数1011B = 1 * 23 + 0 * 22 + 1 * 21 + 1 * 20 = 11D

图1:二进制转十进制的位权法

  • 二进制转八进制:采用三合一法,即从二进制的小数点为分界点,向左(或向右)每三位对应八进制的一位,不足三位的前面补0,例如:10110011B = (0)10 110 011 = 263O

图2:二进制转八进制的合位法

  • 二进制转十六进制:采用四合一法,即从二进制的小数点为分界点,向左(或向右)每四位对应十六进制的一位,不足四位的前面补0,例如:10110011B = 1011 0011 = B3H

图3:二进制转十六进制的合位法

2.2 十进制转其他进制

  • 十进制转二进制:整数采用“除2倒取余”,小数采用“乘2取整”。例如十进制数135转换成二进制时,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取,结果为10000111B
  • 十进制转八进制:和转二进制的方法类似,整数采用“除8倒取余”,小数采用“乘8取整”。例如十进制数10转换成二进制时,将10除以8,得余数,直到不能整除,然后再将余数从下至上倒取,结果为12O
  • 十进制转十六进制:思路和转二进制、八进制一样,十进制数25转换成十六进制时,结果为19H

2.3 八进制转其他进制

  • 八进制转二进制:和二进制转八进制的方法相反,采用三合一法,例如:263O = 010 110 011B
  • 八进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以8为底的幂,顺序从右到左,从0开始计数。例如八进制数26(八进制) = 2 * 81 + 6 * 80 = 22D

图4:八进制转十进制的位权法

  • 八进制转十六进制:不能直接转换,需要先转成二进制,再将二进制转成十六进制

2.4 十六进制转其他进制

  • 十六进制转二进制:和二进制转十六进制的方法相反,采用四合一法,例如:B3H = 1011 0011 = 10110011B
  • 十六进制转八进制:不能直接转换,需要先转成二进制,再将二进制转成八进制
  • 十六进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以16为底的幂,顺序从右到左,从0开始计数。例如十六进制数26H = 2 * 161 + 6 * 160 = 38D

图5:十六进制转十进制的位权法

2 信息单位

一、任务目标

理解计算机用于信息存储和传输的计量单位

熟练地掌握各种不同计量单位间的转换

二、任务背景

在计算机内部,信息都是釆用二进制的形式存储、运算、处理和传输的。信息的存储和传输是以位(bit)、字节(Byte)、千字节(Kilo Byte)、兆字节(Mega Byte)等计量标准为单位的。理解并熟练地换算这些不同的计量单位,就能对系统的存储和传输效率有一个合理的预估。

三、任务内容

1、单位定义

存储单位:存储在计算机硬盘或内存中的信息容量标准,最小计量单位是“位”(bit,比特),一个比特位表示一个二进制的0或1在计算机中所占用的存储空间

传输单位:在计算机网络中称为带宽,宽带传输速率的单位为bps,bps是bit per second的缩写,表示每秒钟传输多少比特位信息(很多人都会把这里的bit误以为是Byte,也就是错把位当成字节),例如:带宽的单位是10Mb/s,这里其实指的是每秒传输10兆位,而不是10兆字节数据,因此将位数需要除以8换算成字节数,也就是每秒传输1.25兆字节,即10Mbit/s = 1.25MByte/s

2、换算公式

  • 1字节(Byte)= 8位(bit)
  • 1KB(Kilo Byte,千字节)= 1024B(Byte)
  • 1MB(Mega Byte,兆字节)= 1024KB
  • 1GB(Giga Byte,吉字节)= 1024MB
  • 1TB(Tera Byte,太字节)= 1024GB
  • 1PB(Peta Byte,拍字节)= 1024TB
  • 1EB(Exa Byte,艾字节)= 1024PB
  • 1ZB(Zeta Byte,泽字节)= 1024EB
  • 1YB(Yotta Byte,尧字节)= 1024ZB
  • 1BB(Bronto Byte,珀字节)= 1024YB
  • 1NB(Nona Byte,诺字节)= 1024BB
  • 1DB(Dogga Byte,刀字节)= 1024NB

3 数据校验

一、任务目标

理解计算机数据校验方法的技术实现原理

理解不同校验方法之间的差别和适用场景

二、任务背景

数据在传输的过程中,会受到各种干扰的影响,如脉冲干扰,随机噪声干扰和人为干扰等,这会使数据产生差错。为了能够控制、减少甚至消除传输过程中的差错,就必须采用有效的措施来控制差错的产生。

三、任务训练

1、奇偶校验

根据传输的二进制数据和奇偶校验位中“1”的个数进行校验。如果连同校验位中“1”的个数是奇数,就是奇校验;反之,就是偶校验

图1:奇偶校验原理

技术特点:简单,可以检测出错误,但无法确切地知道哪里有错,也无法修改,只能要求重传

适用场景:应用广泛,但不适宜在信号噪声较多的环境中传输

4 多媒体基础参数

一、任务目标

理解不同多媒体文件的特点和技术参数

熟练使用公式来计算多媒体文件的参数

2字节=2^16^=65536种字符,

英文用ASCII码

中文有GBK, GBK2131码

二、任务背景

所谓多媒体(Multimedia)指的是多种媒体的综合,一般包括图像、声音和视频等形式或者它们的组合。可以通过基础参数来衡量多媒体文件质量的好坏。

三、任务内容

1、参数定义

比特率:音视频、图像都可以采用这个指标,它指的是规定时间内传输的比特数,单位是bps(bit per second),比特率越高,数据传输的速度就越快,流媒体的播放质量就越好(音视频越清晰),所需带宽也越大,比特率有时候也和码率混为一谈,但码率的单位一般是kbps(千位每秒)。

采样率:专用于音频多媒体,也称为采样速度或者采样频率,它定义了每秒从连续信号中提取并组成离散信号的采样个数,单位为赫兹(Hz)。采样率的意义在于将模拟信号转换成数字信号时的采样频率,也就是单位时间内采样多少个点,常用的采样率为44.1KHz。

采样位深:也被称为采样精度,单位为Bit,常见的位深有16Bit和24Bit,它其实就是每个采样样本中信息的比特数。

2、计算公式

  • 视频码率计算公式(kbps,千位每秒) = 文件大小(KB,千字节)* 8 / 秒数
  • 音频码率计算公式(kbps,千位每秒) = 采样率 × 采样位深 × 通道数

5 HTTP协议

一、任务目标

理解并掌握HTTP协议的概念和运行机制
理解HTTP请求头和响应头的格式和作用
熟练掌握各种常用的HTTP请求方法和响应状态码的意义
理解Cookie和Session的作用和区别

右键>>>审查元素>>>Network>>>刷新>>>请求头 响应头

二、任务背景

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可以给服务器发送什么样的消息以及能够得到什么样的响应。这个简单的模型是早期Web应用得以普及的重要保障,可以说没有HTTP协议,就没有今天丰富多彩、繁荣兴旺的互联网。

三、任务内容

使用Chrome浏览器打开任意一个网站,例如百度(https://www.baidu.com),然后在页面上点击鼠标右键,在弹出的菜单上选择「检查」选项。
图1:在网页上选择「检查」选项
在出现的开发者选项界面中,选择「Network」选项。
图2:选择「Network」选项
重新刷新页面,点击「Name」列表中的任意一个请求地址,就可以看到HTTP协议在请求/响应过程中涉及到的数据内容和格式。
图3:查看Header头
关注HTTP请求头和响应头(Request Headers和Response Headers)中的内容以及其中的作用。写出Cookie和Session的区别(有多少就写多少):

区别项 Cookie Session
1 用户凭证
2 客户端 服务端
3 删去则登陆失效
4 从network中application进入
5

6 HTTPS

一、任务目标

了解HTTPS中所涉及到的技术及作用

了解SSL/TLS协议的技术机制及意义

理解加密解密技术在HTTPS中的重要作用

理解证书在HTTPS中的重要作用

二、任务背景

HTTPS(全称是Hyper Text Transfer Protocol over SecureSocket Layer)是身披SSL/TLS外壳的HTTP。它在HTTP之上利用SSL/TLS建立安全的信道,加密数据传输。它被广泛用于互联网上安全敏感的通讯,例如电商、支付等应用。

三、任务训练

1、加密算法

对称加密:加密与解密用同一套密钥,如DES、3DES和AES等

非对称加密:加密和解密所使用的密钥不同,如RSA、DSA等

不可逆加密:明文加密后无法通过解密来复原,如MD5、SHA等

2、SSL

全称Secure Sockets Layer,安全套接字协议,因为HTTP是用明文来传输数据的,传输内容可能会被偷窥(嗅探)和篡改,SSL的出现就是用来解决信息安全问题的,当前版本为3.0。它位于TCP/IP协议与各种应用层协议之间,自身又分为两层: SSL记录协议(SSL Record Protocol)和SSL握手协议(SSL Handshake Protocol)。

图1:SSL协议结构

图2:SSL运行过程

3、TLS

全称Transport Layer Security,传输层协议,它是在SSL3.0基础上设计的,相当于SSL的后续版本,它的目标是让SSL更安全。

图3:TLS协议结构

4、证书与证书链

大学读完之后有毕业证书,并且这个证书可以在学信网查询

专业上有注会、CCIE、律师证等,可以在国家职业认证机构或委托机构的网站上查到

公司注册之后,营业执照信息也可以在天眼查或企查查上找到

证书的作用

  • 过往经历的证明
  • 第三方信用担保
  • 唯一合法性检验

图4:证书链

图5:证书验证过程

7 OSI七层模型

一、任务目标

理解OSI七层网络模型中每一层的作用和存在的意义

理解OSI七层网络模型中每一层所涉及的协议及其作用

理解并熟知数据从发送到接收的完整传输过程

ISO 国际标准化组织

IOS 苹果或思科操作系统

OSI 七层网络模型

工程师思维—分层—将复杂问题拆分为简单问题

软件开发工程师—专注于应用层

目前,软件工程师范畴常用的是五层模型,即把OSI的应用层,表示层,会话层合并为应用层。(思科华为常用)

应用层为最上层

数据链路+物理层为下层

物理层(解决设备连接网络问题)

分为

有线:双绞线,光纤

无线:WIFI,5G,蓝牙

lightFI,手电筒也可以传递信号,

即可收又可发,为全双工

双绞线为8根线,每两根缠为一股,共四股,最终被压为RC45水晶头里的8个脚。是为网线。

计算机处理数据,通常需要编码和解码。

故***调制解调器***就起到将数字信号进行解码的作用。

数据链路层(局域网内设备通信)

含数据封装

***交换机:***一对多设备或多对一设备

到此层可构建本地局域网

但次层次 :华为+思科 协议私有,但标准公有

每个主机含唯一MAC地址,是为网卡地址


发送机—二进制数据—数据帧(含MAC地址)—交换机—拆包—目标机


网络层(多个局域网间设备通信)

路由器:IPV4:32位,共四字节

IPV6:128位:共16字节

数据链路层的数据经过封装后在该层被打包为IP数据包(信封)经路由器,选择正确路由(高速公路)

ARP和RARP攻击,欺骗协议,在网络层和数据链路层间工作,获取对应的MAC地址和对应数据包

局域网地址(内部可不同,对外需要一致,接入外网)


局域网地址通过NAT转化为公网地址


传输层

(解决单个设备内各程序调用各自需要数据问题)

网线端口号——–多个程序

插台——用电器

黑客通常侦听全网线,软件工程师通常侦听自己需用端口

TCP: 可靠传输,确保收到数据,并确保准确,确保顺序一致

(依赖与三次握手,一系列机制,收到,收到了收到,数据校验)

(效率慢,质量高)(适合机要)

UDP: 不可靠传输,三不管

(效率快,质量低)(适合网游)

应用层

通用端口>1000

共享文件FTP

邮件SMTP,POP3

网页HTTP(80),HTTP3(443)

域名(DNS)

DHCP(IP动态分布)

TCP和UDP端口号不同,各自独立

表示层

数据编码,格式转换,解密

二、任务背景

大学计算机网络相关专业的同学,可能都知道OSI七层模型。OSI的全称是Open System Interconnection(开放系统互联),是一个定义得较为完备的协议规范。它最大的意义在于解决了不同网络之间的互联互通问题,并且清晰地定义了不同网络层次之间的边界和职责。

三、任务内容

应用层(Application Layer):是OSI参考模型的最高层,它是用户、应用程序和网络之间的接口,它直接向用户提供服务,替用户在网络上完成各种工作。

表示层(Presentation Layer):是OSI参考模型的第六层,它对来自应用层的指令和数据进行解释,对各种语法赋予相应的含义,它主要功能是处理用户信息的表示问题,例如数据编码、数据格式转换和加解密等

会话层(Session Layer):是OSI参考模型的第五层,它的主要任务是为两个实体的表示层提供建立和使用连接的方法(不同实体之间表示层的连接称为会话),组织和协调两个会话进程之间的通信,并对数据交换进行管理。(调用数据)

传输层(Transport Layer):是OSI参考模型的第四层。该层的主要任务是向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输,同时向高层屏蔽下层数据通信的细节。

网络层(Network Layer):是OSI参考模型的第三层,它是最复杂的一层,也是通信子网的最高一层。它在下两层的基础上向上层提供服务。它的主要任务是通过路由选择算法,为报文或分组选择最合适的路径。该层控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。

数据链路层(Data Link Layer):是OSI参考模型的第二层,它负责建立和管理节点间的链路。同时通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

物理层(Physical Layer):是OSI参考模型的第一层,也是最底层。它的主要功能是利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。它使数据链路层不必考虑网络的具体传输介质是什么。“比特流的透明传输”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。

图1:A主机通过互联网发送电子邮件的过程

图2:B主机通过互联网接收电子邮件的过程

图3:OSI各层所涉及的网络协议

8 IP基础

一、任务目标

了解IP协议对互联网所起到的重要且不可替代的作用

掌握IP地址的基础知识

IP地址:类别位+网络号+主机号

网络类型

1 广域网-远程网

2 城域网-为多个局域网的连接–城市

3 局域网–公司和学校

4 个人局域网—个人的多个设备—10m

互连网 internet,泛指多个计算机互连的网络

使用TCP/IP规则的为互联网 Internet

二、任务背景

IP是Internet Protocol(网际协议)的缩写,是整个TCP/IP协议族的核心,也是构成互联网的基础,可以说,只要计算机在网络中存在,就一定会有能够找得到它的IP地址。IP主要包含三方面的内容:IP编址方案、分组封装格式及分组转发规则。本任务所涉及的仅仅是IP编址方案。

三、任务内容

1、IP地址

IP位于网络层,作用是主机间的通信,负责在没有直连的两个网络之间传输通信数据,而MAC位于数据链路层,作用是实现两个设备之间的直连通信

图1:IP和MAC的区别

IP地址(IPv4)由32位二进制数表示,在计算机中是以二进制的方式处理的,人类为了方便记忆而采用了点分十进制的标记方式:也就是将32位二进制的IP地址以每8位为一组,共分为4组,组之间用“.”隔开,再将每组转换成十进制数表示。也就是说,IP地址的最大值就是232 = 4294967296

图2:IPv4的表示方法

2、IP地址分类

互联网诞生之初,IP地址显得很充裕,因此计算机科学家们设计了分类地址。他们把IP地址分为五种类型:A、B、C、D、E。

图3:A、B、C、D、E五类IP地址

类别 IP地址范围 最大主机数
A 0.0.0.0 ~ 127.255.255.255 16777214 主机数多的大型网络
B 128.0.0.0 ~ 191.255.255.255 65534 大国际公司
C 192.0.0.0 ~ 223.255.255.255 254 小公司

为什么要有网络号?因为除了需要定位某台具体的计算机,还需要定位某个网络。网络号和主机号的关系,就好比楼栋和住户的关系,也就是「网络号:主机号 == 楼栋号:住户」。

最大主机数 = 2主机号的位数 - 2,例如C类IP地址的主机号位数为8,那么C类IP地址的最大主机数 = 28 - 2 = 254。之所以要减2,是因为有两个IP是特殊的,分别是主机号全为1和主机号全为0。

图4:最大主机数要排除全0和全1的主机号

3、无分类地址CIDR

不再有A、B、C、D、E等分类的概念,而是仅仅将32位的IP地址划分成两部分:网络号 + 主机号,形式为:a.b.c.d/x,其中/x表示前x位属于网络号,范围是0~32。例如10.100.122.2/24,通过CIDR也可以得到子网掩码。

图5:CIDR无分类地址

4、小知识

在A、B、C三类地址中,分别都有一个保留地址。(用于局域网使用),可通过路由接入广域网,楚以下的地址为公网广域网地址,广域网上各计算机可互相访问

  • A类:10.0.0.0 ~ 10.255.255.255
  • 默认子网掩码:255.0.0.0
  • B类:172.16.0.0 ~ 172.31.255.255
  • 默认子网掩码:255.240.0.0
  • C类:192.168.0.0 ~ 192.168.255.255
  • 默认子网掩码:255.255.0.0
  • 127.0.0.0-127.255.255.255 系统环回地址

也就是说,这三组地址是私有网络地址,在互联网上是用不了的

本机IP、127.0.0.1和localhost:经常可以在开发中看到这三个不同的IP地址。他们之间的区别是什么呢?

  • 本机IP:确切地说是本机物理网卡的IP地址,它发送和接收数据会受到防火墙和网卡的限制
  • 127.0.0.1:这是一个环回地址,也是一个特殊的网络接口,从它发出的任何数据包都不会出现在网络中,它发送和接收数据也会受到防火墙和网卡的限制
  • localhost:它是一个域名,过去它指向127.0.0.1这个IP地址,现在它同时还指向IPv6地址:[::1] ,它发送和接收数据不会受防火墙和网卡的限制

9 IPv6

一、任务目标

理解IPv6的表示方法和地址类型

二、任务背景

在IPv4诞生的时代,是无法预见今日互联网的繁荣程度的,因此很多设计问题在发展的过程中也逐渐暴露出来,例如分类不合理,可用的公网IP地址总数量太少等等。在此情况下,出现了IPv6。IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。

三、任务内容

冒分十六进制表示法:格式为X:X:X:X:X:X:X:X,每个X表示地址中的16个二进制位(或者十六进制数),例如:ABCD:EF01:2345:6789:ABCD:EF01:2345:6789,这种表示法中,X中的前导0是可以省略的。

0位压缩表示法:如果一个IPv6地址中间包含很长的一段0,就可以把连续的一段0压缩为“::”。但这种形式“::”只能出现一次。

内嵌IPv4表示法:为了和IPv4兼容,IPv4地址可以嵌入IPv6地址中,此时地址格式为:X:X:X:X:X:X:d.d.d.d,前96位采用冒分十六进制表示,而最后32位则使用IPv4的点分十进制表示,例如:::192.168.0.1。

::1/128是IPv6的环回地址的缺省写法

10 网络拓扑

一、任务目标

理解网络拓扑结构的组成原理和作用
知道常用的网络拓扑结构及其适用场景

二、任务背景

互联网是一个广义上的概念,它泛指的是一切通过网络连接在一起的计算机集合。所以,如果只是观察局部,比如某一家公司的网络的话,那么就不能再说这家公司的网络就是“互联网”了。那么,对于每家公司来说,网络具体又是如何构成的呢?这就是网络拓扑结构要解决的问题。如同数据结构是按照某种形式组织数据一样,网络拓扑结构指的也是按照某种形式将不同的物理计算机连接在一起。

三、任务内容

星型结构:是指各计算机以星型方式连接成网。网络有中央节点,其他结点(工作站、服务器)都与中央节点直接相连,这种结构以中央结点为中心,因此又称为集中式网络。它具有结构简单、便于管理、控制简单、网络延迟时间小、传输误差低等特点。但缺点也是明显的:可靠性较低、资源共享能力较差、线路利用率低。

图1:星型网络拓扑结构

总线型结构:是指各工作站和服务器均挂在一条总线上,各工作站地位平等,无中心节点控制,它结构简单、可扩充性好、安装容易,但维护困难。

图2:总线网络拓扑结构

环型结构:由网络中若干结点通过通信链路首尾相连形成一个闭合的环,这种结构使公共传输电缆组成环状,数据在环路中沿着一个方向在各个节点间传输,信息从一个节点传到另一个节点。它实时性强、传输控制容易,但维护困难,可靠性不高。

图3:环型网络拓扑结构

网状结构:它是指每台设备之间均有点到点的链路连接,这种连接不经济,只有每个站点都要频繁发送信息时才使用这种方法。它的安装也比较复杂,但系统可靠性高,容错能力强。有时也称为分布式结构。

图4:网状网络拓扑结构

树型结构:这是一种分级的集中控制式网络,与星型相比,它的通信线路总长度短,成本较低、节点易于扩充、寻找路径方便,但除了叶节点及其相连的线路外,任一节点或其相连的线路故障都会使系统受到影响。

图5:树型网络拓扑结构

11 域名解析

一、任务目标

了解域名的意义及作用
掌握常见的域名解析类型和规则

二、任务背景

在互联网上有成千上万台计算机,为了能准确地访问其中某台计算机上的服务,在OSI七层模型的网络层中,通过IP地址来唯一标记每台主机在网络里的位置,比如:39.106.226.142。但是这些纯数字的IP地址太难记了,因而就出现了域名(比如csdn.net)这样便于人类记忆的地址符号。这相当于现实世界中城市的名称,如武汉市,IP地址则相当于邮局内部的编码,如420000,而域名解析就是将域名转换为IP地址的过程。

三、任务内容

1、域名规则

英文域名只能由26个英文字母、0~9十个数字以及“-”连字符号混合而成(除了“-”不能是第一个字符),不支持使用空格及一些特殊字符,比如!?/;:@#$%^~_=+,*<>等。

英文域名不区分大小写,也可以是纯英文和数字域名,对于中文域名而言,则必须含有中文字符。

域名级数是从右至左按照“.”分隔的部分确定的,有几个“.”就是几级,一般情况下,域名最好不超过五级,例如a.com是一级域名,而a.b.com则是二级域名。

每一级域名长度的限制是***63个字符,域名总长度则不能超过253***个字符。

常见的通用顶级域名为:.biz .com .edu .gov .info .int .mil .name .net .org。

国家顶级域名参照ISO 3166-1中的双字母代码生成,例如中国大陆为.cn,中国香港为.hk,中国台湾为.tw,美国为.us。

通用域名可以组合国家域名,标明所在地区(只要域名管理机构允许),例如.gov.cn。

2、域名解析类型

A记录解析:A记录就是Address记录,是用来指定域名对应的IP地址,通常是将网站服务指向服务器地址,例如将域名www.csdn.net指向39.106.226.142这个IP地址,就是一个典型的A记录解析。

(将域名直接解析为IP地址)

CNAME记录解析:如果服务器的地址发生变动,光靠A记录就不行了。这时候就需要用到CNAME,它又叫别名解析,例如域名www.csdn.net,真实的IP地址为39.106.226.142,对应的CNAME可能是abc.csdnweb.com,也就是允许多个域名对应服务器的主机名,这样即使服务器的IP地址发生变更,也不用更改解析记录,域名解析会自动依据主机名更新IP地址。如果A记录解析和CNAME记录解析并存,那么A记录解析将优先生效。

(将域名指向另一个域名)

(避免A记录下需要多次修改同一IP地址的情况)

MX记录解析:即邮件交换记录,这种记录解析用于将以域名为结尾的电子邮件指向对应的邮件服务器,例如用户所用的邮件以csdn.net为结尾,那么就需要在域名管理中添加该域名的MX记录来处理所有以@csdn.net为结尾的邮件。

(邮件系统专用)

3、泛域名解析

是指将某一类域名解析到同一个IP地址,以通配符的方式实现,例如将*.csdn.net的泛域名指向IP地址39.106.226.142时,那么a.csdn.net、b.csdn.net等所有以csdn.net结尾的域名都会指向39.106.226.142这个IP。

(同一一级域名指向同一IP)

12 常用网络命令和端口

一、任务目标

了解常用的网络服务端口号

掌握常见网络命令及使用场景

二、任务背景

工程师天天使用计算机做软件开发,有时候出了问题需要确定到底是自己的问题,还是网络的问题。所以学习并了解一些常见的计算机命令和开发中常用的端口,对开发工作会有很多实际的帮助。

三、任务内容

1、常用网络命令

ping命令:这是在开发中使用频率极高的一个命令,主要用于确定网络的连通性,例如很多刚刚安装操作系统的计算机,第一件事就是先看看是否能联网,所以往往执行的第一条命令就是ping命令。它的格式是:ping 主机名/域名/IP地址。

图1:在Windows中使用ping命令

ipconfig/ifconfig命令:当使用不带任何参数选项ipconfig/ifconfig命令时,显示每个已经配置了的接口的IP地址、子网掩码和缺省网关值。其中在Windows中使用的是ipconfig,而在Mac或Linux系统中,使用的是ifconfig。

图2:在Windows中使用ipconfig命令

netstat命令:能够显示活动的TCP连接、计算机侦听的端口、以太网统计信息、IP路由表、IPv4以及IPv6统计信息,通过它可以了解网络当前的状态。

图3:在Windows中使用netstat命令

2、常用网络端口

TCP与UDP段结构中端口范围在0~65535之间。

端口号小于256的是常用端口,服务器一般都是通过常用端口号来识别的。

任何TCP/IP实现所提供的服务都用0~1023之间的端口号。

1024~49151端口号是被注册的端口号,可以由用户自由使用,也是被IANA指定为特殊服务使用,从49152~65535是动态或私有端口号(以上并不是强制的)。

端口 服务/协议 说明
21 FTP FTP服务器所开放的端口,用于上传、下载
22 SSH SSH连接
23 Telnet 远程登录服务
25 SMTP SMTP服务器所开放的端口,用于发送邮件
80 HTTP HTTP协议默认端口号
110 POP3 邮局协议端口号
161 SNMP 网络管理协议端口号
443 HTTPS HTTPS协议默认端口号
8080 WWW代理 一般的网站服务会开放此端口

13 数据结构常识

一、任务目标

了解常用的数据结构及其分类

理解不同的数据结构所适用的不同场景

算法 函数库的直接调用

实例代码的改编

二、任务背景

数据结构是计算机存储、组织数据的方式,它研究的是如何构造复杂软件系统的根基,它的核心内涵是分解与抽象,并得到软件开发过程中需要用到的逻辑结构。用简单直白的话来说,就是同样的数据,在某些场景下,用数组会比用链表好,而在另一些场景下,可能用栈(一种可以实现「后进先出」的线性表)就是最合理的了。

三、任务内容

数组(Array):它是将具有相同类型的若干数据组织在一起的集合,这是一种最基本而且也是一种最经常使用的数据结构。

数组下标从0开始,所以array[3][1]代表第四行、第二列,前面的为行,后面的为列

图1:数组

栈(Stack):一种特殊的线性表,只能在一个表的固定端进行数据节点的插入和删除操作,栈正是一种按照后进先出(LIFO)的原则来存储数据的数据结构。

图2:栈

队列(Queue):和栈类似,但不同的是,它是在一端执行入队操作,而在另一端进行出队操作。

图3:队列

链表(Linked List):它和数组一样,也是一组数据的集合,但和数组不一样的是,它并不是一组连续的数据集合,而是通过指针连接在一起的。

单向,双向,循环,双循环

图4:链表

树(Tree):这是一种典型的非线性结构,之所以叫做“树”,是因为它的结构看起来就像一颗倒过来的树,它只有一个根结点,但可以有多个后继节点。

图5:树

堆(Heap):它是一种特殊的树型结构,它的特点是根结点的值是所有节点中最大或者最小的,而且根结点的子节点也是一个堆结构。

最大堆:根节点总比子节点大

不是,所谓 AVL 树,就是对于任意一个节点来说,它的左子树比它小,它的右子树比它大;而且任意节点的子节点之间高度差距最大为 1

图6:最小堆

图7:最大堆

图(Graph):这也是一种非线性数据结构,在图结构中,数据节点称为顶点,顶点之间的连线称为边。

图8:有向图

图9:无向图

散列表(Hash):这种数据结构来源于散列函数,它的思想是如果存在x,那么就必然有一个唯一的存储位置f(x)可以找到x,这样通过数学函数就直接计算出x的存储位置而不用在进行比较、查找以后才知道。

图10:散列表

谢谢你们对我的支持!

欢迎关注我的其它发布渠道